Compare commits

...

320 Commits

Author SHA1 Message Date
Ian Chua
ffb2946b20 feat: compare with environment variable FOLDER_MERGERS for verified folders 2026-09-10 20:09:37 +08:00
Ian Chua
e89a05b1e4 fix: repo name 2026-09-10 16:38:03 +08:00
Ian Chua
02a8011b97 feat: add CI to generate OPC for OTA workflow 2026-09-10 16:27:23 +08:00
Ian Chua
6c92920aa1 fix: add opc support for ota workflow (#15416)
# Description

<!--
> Please provide a summary of the changes made in this PR. Include
details such as:
  > * What issue does this PR address or fix?
  > * What new features or enhancements does this PR introduce?
> * Are there any breaking changes or dependencies that need to be
considered?
-->

Addition to #14217 to support OTA updates when the zip content is an OPC
file.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-09-10 15:54:56 +08:00
Ian Chua
eb0b67740e Merge branch 'main' into fix/opc-support-for-ota 2026-09-10 15:42:14 +08:00
SoftFever
3788a19730 Publish 3MF Workflow (#15251)
# Description

This PR introduces a publish workflow for sharing selected slicer
settings in .3mf projects without exposing or overriding the recipient's
complete printer, filament, or process profiles. A published file
specifies "requirements" for a model — printer, process, and per-slot
filament requirements — while importing it preserves the rest of the
recipient's workflow.

Publish dialog (File → Publish, Ctrl+Shift+E)
- Tabbed dialog (Printer / Filament / Process) with search, Select All /
Select Visible, and DPI rescaling.
- Per-material pages expose three kinds of content: individually
selected filament keys, a Full Publish toggle that embeds the slot's
entire filament preset, and required type and color rows for the slot.
- Publishing is allowed with no settings selected (the file then carries
only identity/requirement data).
- Reuses configuration value formatting extracted into a shared
ConfigValueFormatter.

Export
- Published 3MFs carry published, published_keys, and
published_material_keys metadata.
- A minimal export mode serializes only the selected values, material
identity, and plate geometry, omits embedded preset files, and masks
full-publish vector options to the author's slot so unrelated slot data
never leaks into the file.

Loading
- Only author-selected settings are applied; the recipient's presets are
otherwise preserved and structural/non-publishable keys are protected
(skipped keys are reported).
- Material settings match by filament ID, type, vendor, and slot.
Per-slot type requirements keep a matching receiver material, replace a
mismatched slot with the first same-type library filament (with a
notification), and fall back to a temporary embedded preset or skipped
keys when no match exists. Required colors are applied regardless of the
type match.
- A published 3MF loads as a new project: its path is not adopted as the
project filename (Save prompts instead of overwriting the shared file),
the title reverts to "Untitled", and the published metadata is stripped
so a later save produces a normal 3MF.
- Customized-preset and modified-G-code warnings are suppressed, since
the author's presets and G-code are not applied.
- Previously published 3MF files continue to load through the existing
matching path.

# Screenshots/Recordings/Graphs
<img width="1405" height="734" alt="publish_dialog"
src="https://github.com/user-attachments/assets/96b833c1-2b86-4c09-92b4-a4471a567e62"
/>


[publish_dialog_settings.webm](https://github.com/user-attachments/assets/acf22dd9-ae9b-4a58-b77d-8c2d9ffbc7a5)


## Tests
Added tests covering:
- Coverage for export slot masking, metadata round-trip,
type-match/replace/fallback semantics, slot growth, and skipped-key
reporting.
2026-09-10 15:35:17 +08:00
Lam Wei Lun
9e4f8aac80 Merge and fix conflicts 2026-09-10 12:11:20 +08:00
Kris Austin
e296d5daac build: fix 9 defects found by clang-cl warnings (#15583) 2026-09-09 19:13:05 -03:00
TheLegendTubaGuy
dbeef900cc Fix Windows build test midnight race (#15616) 2026-09-09 14:18:21 -03:00
Kris Austin
f18eb21b82 build: clear 11 single-site clang-cl warning categories (#15584)
build: clear eleven single-site clang-cl warning categories

Each of these is the last site left in its category, and every one is the
compiler saying it cannot tell what the code meant. Nothing here changes
defined behavior.

- OrcaSlicer_app_msvc.cpp printed a DWORD with %d
- StackWalker.cpp ran delete[] through an LPVOID
- ToolOrdering.cpp used a bare ; as a deliberate skip loop's body
- WipeTower.cpp had finish_block_tcr = finish_block_tcr, so the branch that
  reached it did nothing. Folding the condition into the enclosing if leaves
  the other branch untouched
- GCodeProcessor.cpp had an else binding to the inner if while the outer if
  carried no braces
- AmsMappingPopupUpdate.cpp wrote >= 1 || <= 3 where its own comment says &&
- CalibrationWizardPresetPage.cpp left max_decimal_length unset through a
  pair of conditions that cover every value but not visibly so
- DevManager.cpp bound map elements to pair<K, V> rather than
  pair<const K, V>, copying every one
- SyncAmsInfoDialog.cpp had extraneous parentheses around a comparison
- Http.cpp had if (speed > 0.01) speed = speed;. speed now starts at 0 as
  well, because curl_easy_getinfo leaves the target untouched when it fails
  and the value reaches Progress either way
- SnapmakerPrinterAgent.cpp truncated npos into an unsigned int, so the
  != npos guard was always true. A colour with no # still yields 0, because
  the wrap produced 0 as well

Nine categories go to zero. -Wtautological-overlap-compare and
-Wsometimes-uninitialized reach zero when #15583 merges their second site.
2026-09-09 12:01:19 -03:00
Lam Wei Lun
0927a5d5e7 Merge main 2026-09-09 19:12:23 +08:00
Kris Austin
913afc51b7 build: clear 3 warnings - lambda captures that are not required (#15596)
config_substitution_rule is a const enum with a constant initializer, so a
lambda can read it without capturing it. Capturing it explicitly is what
-Wunused-lambda-capture reports.

The category was taken to zero by #15417 and merged on 2026-09-02. These
three sites arrived on 2026-09-08 in bcb4f17d9a, "fix(cli): resolve inherited
presets through vendor manifests" (#15438). All three lambdas still read the
value, which needs no capture and is unchanged.
2026-09-09 08:07:54 -03:00
Kris Austin
fa3dbfcc6f fix: clear 1 warning - report the real error when a Windows G-code export fails (#15582)
fix: report the real error when a Windows G-code export fails

copy_file built its failure message as "Error: " + errCode. Adding a DWORD
to a string literal is pointer arithmetic, not concatenation, so the pointer
lands errCode bytes into an 8-byte literal and runs past its end for any code
above 7. std::string then calls strlen on it and throws length_error, and the
catch(...) in BackgroundSlicingProcess::finalize_gcode replaces the diagnosis
with "Unknown error occurred during exporting G-code."

Every code a user is likely to hit is past the end: write-protected media is
19, no media 21, a full disk 112, and a destination held open by another
program 32. Codes 1 to 7 stay inside the literal and produce a truncated
message instead. So the "Maybe the SD card is write locked?" text has not
been reachable on Windows since this path was added in #2923.

Now that it is reachable, that guess only fits removable media, so it is
conditional on m_export_path_on_removable_media. The existing string is
untouched and keeps its 23 translations; the fixed-drive case adds one string.
2026-09-09 07:55:19 -03:00
Kris Austin
46180c3f54 build: clear 3 warnings - a precedence bug, an arm64-only pragma, and a CLI error label (#15601)
* build: clear 2 warnings - a precedence bug and an arm64-only pragma

Both were found by promoting every warning to an error across the CI matrix.
Neither is reported by clang-cl on Windows x64, which is the configuration the
#15374 inventory measures.

LineSplit.hpp reserved with path.size() + closed ? 1 : 0. Addition binds
tighter than ?:, so that parses as (path.size() + closed) ? 1 : 0, and the
function returns early when path is empty, so the condition is always true and
the reserve is always 1. The vector then grows by reallocation instead of
reserving once. Output is unaffected, since reserve only sets capacity.
Reported by Clang on Linux, macOS and Flatpak; GCC does not diagnose it.

Int128.hpp declared #pragma intrinsic(_mul128) under _WIN64, which is defined
on Windows arm64 as well, where that x64 intrinsic does not exist. The call
site at line 190 is already guarded on _M_X64 and carries a comment saying
ARM64 has no _mul128, so the pragma now uses the same guard. x64 is unchanged
because _M_X64 is defined there.

* build: clear 1 warning - CLI error label prints 1 instead of a name

construct_assemble_list is a function, so streaming it converts the function
pointer to bool. When that catch block fires the CLI prints "1: <message>".

This line was already fixed in #5963 and came back in the wholesale revert of
that PR two weeks later, which was reverting an auto-orientation regression
somewhere in its 184 files. The string is restored exactly as it was merged
then.
2026-09-09 07:51:10 -03:00
Kris Austin
a3c9041c10 build: clear 2 warnings - sites GCC reports and Clang does not (#15597)
Both are in our own code and neither shows up in a clang-cl or clang census,
so the Windows and CI matrices have never reported them.

FillRectilinear.cpp draws two trapezoid diagrams whose lines end in a
backslash, which continues a // comment onto the next line. GCC calls that a
multi-line comment. The diagrams are now block comments, where the rule does
not apply, and the drawings are unchanged.

CutObjectBase has a user-provided operator= and a virtual destructor, either
of which deprecates its implicitly generated copy constructor. bbs_3mf.cpp
copies the type through CutObjectInfo. The copy constructor is now declared
and defaulted, leaving the class with no implicit copy member. Move
operations were already suppressed by the user-provided operator=, so nothing
changes there.
2026-09-09 07:45:25 -03:00
Kris Austin
c70a613548 build: clear 8 warnings - && inside || without parentheses (#15587)
Every edit makes the precedence the compiler already applies explicit. None
of them regroups an expression, so behavior is unchanged at all eight sites.
Strip parentheses and whitespace from the diff and the token stream matches.

GCodeProcessor.cpp:1472 tests == where the symmetric clause below tests !=,
which reads like a typo and is not one. A comment now explains why.

OrcaSlicer.cpp:4760 was the only judgment call. Its leading !is_seq_print is
bare while both operands are parenthesized, so the written form matches what
the compiler does. Kept rather than guessed at.
2026-09-09 07:43:08 -03:00
Kris Austin
10c123f2aa build: clear 6 warnings - data passed as ImGui format strings (#15585)
ImGui::Text and ImGui::TextColored take a printf format, so these six sites
passed data where a literal belonged. A % in that data reads a vararg that
was never supplied.

Three sites in GLCanvas3D's paint toolbar passed filament text, which comes
from the filament preset config and is user-editable. Two more passed
translated strings, where a % in any of the 23 catalogs does the same.
GLGizmoSimplify passed its progress label.

That label had been built with an escaped %% because it was being used as a
format string. Passing it as an argument instead needs a single %, so it
still renders as "42%".

ToUTF8() returns a buffer class, which converts to const char* for a named
parameter but not through varargs, so those two sites need .data().

GLGizmoSimplify.cpp:335 is unchanged, because _u8L("%d triangles") is passed
with a real argument and has to stay a format string.
2026-09-09 07:41:51 -03:00
MAVProxyUser
d112a0af29 Fix two stack buffer overflows in ADMesh stl_read (unbounded solid name + MW metadata parse) (#15594)
Fix two stack buffer overflows in ADMesh stl_read (solid name + MW parse)

Bound the ASCII-STL solid-name fscanf scanset to the buffer size, and bound
the OrcaSlicer-specific "MW" metadata sscanf %s conversions to their buffers:

- fscanf(fp, " solid %[^\n]", solid_name)  -> %255[^\n]   (solid_name[256])
- sscanf(mw_position+3, "%s %s %s", ...)   -> %15s %127s %15s
  (version_str[16], model_id_str[128], country_code_str[16])

Both are reachable by opening a crafted .stl and overwrite saved stack state
(instruction-pointer control on the no-PAC arm64 macOS build). The solid-name
defect is inherited from the shared ADMesh loader (bambulab/BambuStudio#12153);
the MW parse is OrcaSlicer-specific.

Co-authored-by: Kevin Finisterre <kfinisterre@KevinsMacStudio.localdomain>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-09 07:39:08 -03:00
HanifKoh
8af92214d0 Extract and Unify Wipe Tower Estimation (#15532)
# Description

The pre-slice wipe tower size estimate existed twice:
`Print::wipe_tower_data()` (validation) and
`PartPlate::estimate_wipe_tower_size()` (GUI placement clamp, default
placement, preview, arrange, CLI placement) — with a third partial copy
in the CLI, which resolved the brim itself around the second. They were
hand-written twins reading their inputs from different places, so
validation could measure a tower with one number after the clamp had
placed it with another.

This PR extracts the estimate into one function,
`estimate_wipe_tower_footprint()` in
`src/libslic3r/GCode/WipeTowerEstimate.{hpp,cpp}`. It takes a
`ConfigBase&` (static `PrintConfig` and GUI/CLI `DynamicPrintConfig`
both work), the filament count, layer height and tallest object height,
and returns width, depth, height and the resolved brim width.
`Print::wipe_tower_data()` and a new
`PartPlate::estimate_wipe_tower_footprint()` become thin adapters around
it; `PartPlate::estimate_wipe_tower_size()` had no callers left and is
deleted.

**Inputs made to agree** — sharing the arithmetic is not enough when
each caller derives the inputs from its own view of the model:

* **Layer height** — thinnest layer among the objects on the plate,
resolved per object (Print used the first object's, PartPlate the
preset's).
* **Objects setting the height** — `PartPlate::get_extruders` counts an
object if *any* instance is on the plate, matching `PrintApply` (it only
looked at instance 0).
* **Height per object** — per on-plate instance, from the cached convex
hull (same z extent as the mesh). `PrintObject::size()` still measures
the model's first instance, so objects whose instances differ in scale
or x/y tilt can still disagree; that is inherent to the two data
sources.
* **Wipe tower filament** — counted for every caller, since
`Print::extruders()` adds it to the tool ordering even when unused.
* **Rib width cap** — kept for both (Print lacked it).
* **Config source** — everything read from the config passed in
(PartPlate read `m_print->config()`, stale on fresh plates and in the
CLI).
* **Dual-nozzle test** — `nozzle_diameter.size()` from the config for
both.

**One decision about whether a tower exists.** The rectangle branch
sized a tower the generator never builds while the rib branch reported
none for one it does; with rib as the shipped default, a single-filament
plate that still prints a tower (custom G-code tool changes) validated
against depth 0, collapsing the collision/exclusion hull to a point. The
purge volume is computed first, and an empty footprint is returned only
when nothing is purged, there is no tool change, and nothing else puts a
tower on the plate. The reason a single config cannot see arrives as a
resolved input: validation counts `Print::extruders(true)`.

A raft is deliberately **not** one of those reasons.
`DynamicPrintConfig::normalize_fdm_2` clears `enable_prime_tower` for a
plate that purges one filament unless smooth timelapse or wrapping
detection is on, and `Print::apply()` runs it, so a raft alone leaves no
tower to reserve for. (It also keeps the tower for a single *mixed*
filament, which this does not model — `Print::extruders(true)` does not
expand mixed filaments.)

**Two implementation notes:**

* Enums are read **by value**: a preset-built `DynamicPrintConfig` holds
`ConfigOptionEnumGeneric`, so a `dynamic_cast` to `ConfigOptionEnum<T>`
is null for exactly the config the GUI and CLI pass. The tests build
their configs the way `PresetBundle::full_config()` does, so that
storage is what gets tested.
* `PartPlate::estimate_wipe_tower_footprint()` is CLI-reachable, so
`get_extruders(bool)` gained a config-taking core with the identical
body; the GUI wrapper passes the app's presets, the adapter passes the
config it is given. `get_extruders_under_cli()` was not substituted: it
filters the plate's instances differently (skips unprintable ones, keeps
ones the plate flags as outside), so the GUI's filament set would have
changed in edge cases.

**Also fixed here:** `WipeTowerData` carries the effective width — set
by the estimate, and then by both planners at generation, so it never
disagrees with its neighbour `depth`; the preview and the containment
check take *whether there is a tower at all* from the footprint instead
of each re-deriving it; the config-taking `get_extruders` answers for an
object-less (`.gcode.3mf`) plate the way the wx overload does; the
preview takes body *and* brim from the plate's own footprint (an auto
brim drew every plate with the selected plate's brim);
`estimate_wipe_tower_polygon` builds its margin from the resolved brim
("Auto" gave a margin of 0) and no longer calls `std::clamp` with `hi <
lo`; the estimate falls back to declared defaults instead of hand-copied
constants. `estimate_wipe_tower_size()` /
`estimate_wipe_tower_polygon()` lose four parameters every caller took
from the same config.

## Behaviour changes reviewers should know about

G-code is never affected; no 3MF, profile or string changes. But this is
**not** a pure refactor:

1. **Validation now reserves what the placement clamp reserves**, which
is in places larger than before. A saved 3MF with a tower close to an
exclusion area or the rear edge can be rejected where it previously
sliced; dragging resolves it since the clamp agrees. Nothing re-clamps a
stored position on load (out of scope; the CLI side lands with #15518).
2. **`PartPlate::get_extruders` counts any-instance-on-plate**, which
reaches every caller of it, not only the estimate. It is `PrintApply`'s
rule and closes a GUI/CLI divergence.
3. **`estimate_wipe_tower_polygon`'s rear/right bound is looser by one
brim width** (it subtracted the brim twice).
4. **A single-filament plate with a rib wall no longer reserves a
phantom tower.**
5. **A single-filament plate whose tower comes from wrapping detection
is now validated against the bed.** Neither the old estimate (which read
only the wall type and smooth timelapse) nor the old containment gate
(the filament count or smooth timelapse) knew about that tower, so
between them it was never checked. It is printed, so it can be rejected
now.

Not addressed: the estimate still does not read `wipe_tower_type` or
per-filament `filament_prime_volume`, inherited unchanged from both
copies (the generated Type 1 tower is ~10 mm larger than the estimate on
Bambu profiles). #15516 mirrors the planners and folds into this
function on rebase.

## Verification

Before/after on the same fixtures with a main build and this branch, all
numbers read from the CLI (details, method and the real-tower and
arrange-clamp tables in the first comment):

| Fixture (divergence) | Side | Before (w × d, mm) | After (w × d, mm) |
|---|---|---|---|
| control | GUI/CLI · validation | 23.585 × 23.585 · 23.585 × 23.585 |
same |
| per-object layer 0.1 | GUI/CLI · validation | **23.585** · 31.637 |
**31.638** · 31.637 |
| unused `wipe_tower_filament` | GUI/CLI · validation depth | **39.332**
· 44.542 | **44.541** · 44.542 |
| tall object, instance 0 on another plate | GUI/CLI · validation |
**23.585** · 29.391 | **29.390** · 29.391 |
| rib cap binds | GUI/CLI · validation | 11.170 · **13.910** | 11.170 ·
**11.170** |

Before, the two estimates disagree on every divergence fixture; after,
they agree to the 0.001 mm bisection resolution, the control is
unchanged, and G-code is byte-identical. GUI screenshots of the preview
on both binaries are in the same comment.

The table was measured on the first commit; none of its fixtures uses a
raft or a zero purge volume, so the second commit does not move them.
G-code equivalence was re-checked on the final tip: `Cube.3mf` sliced by
a `main` build and by this branch is byte-identical.

# Screenshots/Recordings/Graphs
Before:
No Wipe Tower Preview:
<img width="2068" height="871" alt="image"
src="https://github.com/user-attachments/assets/7875a944-b8db-4bbc-b380-e8188a45caa7"
/>

After:
Has Wipe Tower Preview:
<img width="2551" height="882" alt="image"
src="https://github.com/user-attachments/assets/b4413695-4f24-4aa3-bae4-57304e8b7865"
/>

**Per-object layer height reaching the preview.** One object with a 0.1
mm override against a 0.2 mm preset. `main` sizes the previewed tower
from the preset, so it is smaller than the one validation reserves and
the one that prints; this PR sizes it from the object. Captured
headlessly on both builds from the same project, top view:

<img width="1408" height="596" alt="D_per_object_layer_height"
src="https://github.com/user-attachments/assets/989920fc-9f14-4658-8a3d-681c92a7f754"
/>

Measured over the four evidence fixtures on both builds, this is the
only one of the corrected inputs that changes what is drawn: the others
(an object contributing through a non-zero instance, an unused
`wipe_tower_filament`) change the estimate by amounts confirmed through
the CLI bisection above, but leave the rendered tower pixel-identical.
Arrange is unaffected either way — the tower enters the arranger as a
fixed obstacle (`m_unselected`), so it never moves.



## Tests

* `tests/libslic3r/test_wipe_tower_estimate.cpp` (10 cases / 104
assertions): rectangle and rib sizing, stability floor and auto brim,
single-filament cases (timelapse, wrapping, and a raft *not* reserving
one), a tool change reserving the floor when the purge volumes resolve
to zero, both wall types agreeing on tower existence, dual-nozzle
volume, the shipped flush-matrix path, default fallback for a missing
key, and a {rectangle, cone, rib} × {type1, type2} matrix asserting a
preset-shaped `DynamicPrintConfig` and a static `FullPrintConfig` give
the same footprint.
* `tests/fff_print/test_wipe_tower.cpp`: what `Print` feeds the
estimator — thinnest object layer height, effective width reaching
validation, the width staying current through generation, a
single-filament plate reserving a tower only when one is really printed
(raft no, smooth timelapse yes), and a wrapping-detection tower being
bed-validated. The last two fail on `main` and on the first commit of
this PR.
* Full suites green on this branch: `libslic3r_tests` 342 cases / 58325
assertions, `fff_print_tests` 174 cases / 3152 assertions. `--target
all` builds clean (including `OrcaSlicer_profile_validator`, which needs
`-DORCA_TOOLS=ON`). No new warnings.
* CLI evidence run above; its unused-`wipe_tower_filament` fixture is
also the regression check for the adapter under the CLI, which no unit
test can reach (`PartPlate` needs a GL context).

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-09-09 17:46:20 +08:00
Hanif Koh
284539d762 [CLI]: Place Wipe Tower before Slicing
A plain CLI slice ran none of the placement sites, so a stored or
default tower position that no longer fits the tower the plate needs
went straight to the generation-time error. The slice loop now applies
the same clamp the GUI applies on reload to every plate it is about to
slice, skipping only plates that print no tower: by-object plates with
more than one instance, and plates whose footprint estimate is empty
(which covers single-filament plates without smooth timelapse, wrapping
detection or a raft). The plate's filaments come from the same
config-driven derivation the estimate uses everywhere else.

The two arrange sites read the brim width from the right option when
padding the default position; an auto brim uses its 8 mm cap there,
since the object heights are unknown before the estimate runs.
2026-09-09 15:45:16 +08:00
Hanif Koh
2f2a6bc3b5 Share the Estimated First-Layer Outline of the Wipe Tower
The preview brim, the placement margin and the pre-generation validation
warning each decided on their own whether the tower has a Type2 cone
base, reading the wall type and cone angle three different ways. The
preview's read cast the preset's enum to ConfigOptionEnum<T>, which a
preset-shaped config never holds, so the cone base was never previewed.

estimate_wipe_tower_first_layer_outline now answers that question once,
beside the footprint estimate, from the config and the resolved planner;
all three sites take the outline from it. The libslic3r case reads the
outline off a preset-shaped config, where the old cast came back empty.
2026-09-09 15:45:16 +08:00
Hanif Koh
fae77be3db Place the Wipe Tower in the Profile Validator
The validator forces a two-filament print with the prime tower on and
slices it at the config default position (x 15, y 220), which lies off
any bed shallower than the tower. It calls validate() but slices
regardless, so the off-plate tower was exported silently; with the
generation-time footprint check it is rejected instead, and 522 of the
1013 printer presets failed the slice check.

The validator now positions the tower the way the GUI and CLI do before
slicing: beside the centred cube, clear of the edge exclusion strips some
beds carry, then pulled inside the printable outline by the tower's own
estimated footprint.
2026-09-09 15:45:16 +08:00
Hanif Koh
81357695c5 Verify WipeTower Footprint at Point of Generation
The clamps and validation work from estimates. Once the tower is
generated, _make_wipe_tower re-tests the exact first-layer footprint,
brim and cone base included, against the printable area and the
exclusion zone, so an off-plate tower fails with a clear error instead
of exporting unprintable G-code. The rectangle-wall mesh footprint
learns the Type2 cone base so that check and the post-generation
validation see the real outline.

Pre-generation, validation hard-checks the body plus an explicit brim
and warns on the estimated auto brim and cone base with the existing
"may collide" strings, so the user hears about a marginal position on
the first slice rather than only at generation time.

Two fff_print fixtures that print a tower at the default position move
it onto the 200 mm test bed, as the multifilament fixtures already do:
the shipped default y of 220 is off that bed, and the backstop now says
so instead of exporting the tower.
2026-09-09 15:45:16 +08:00
Hanif Koh
2fdc16f9f2 Size a no-purge tower at the planners' idle depth
Smooth timelapse no longer charges a prime volume it does not purge. A
tower printed with no tool change is exactly the idle depth: the
stability minimum for Type2, the wrapping detection depth for Type1.
Charging a full prime_volume on top made the previewed and arranged
tower deeper than the one that is printed.

The Type2 half of "a tool change reserves a tower whatever the purge
volumes resolve to" arrives with the base commit; here it only has to
survive the planner split, since Type1 already reserves per filament.

The wipe tower filament only joins the tool ordering when there is a
tower to join, which is the has_wipe_tower() half of the guard
Print::extruders applies.
2026-09-09 15:45:16 +08:00
Hanif Koh
869805132e Add Separate Comfort Margin for Auto Placement 2026-09-09 15:45:16 +08:00
Hanif Koh
4c583212f5 Match Drag Margin to Release Clamp 2026-09-09 15:45:16 +08:00
Hanif Koh
e17965be53 Brim and Cone Aware Preview 2026-09-09 15:45:16 +08:00
Hanif Koh
99627c8e93 Size the Footprint Estimate from the Planners
The shared estimate reserved every tower with one volume-per-purge rule
and the stability floor. Both planners do more: WipeTower (Type1) wipes
each filament's own prime volume in whole lines, one block per
adhesiveness category sized by its worst layer, rams the leaving
filament at every nozzle change, and squares a rib tower from the
planned depth; WipeTower2 (Type2) spaces its lines by
wipe_tower_extra_spacing, not the Type1-only infill gap, and its extra
flow cancels out of the depth. Both extend the ribs rather than the body
below the stability minimum, size every layer including a thinner first
one, and lay the brim in whole loops, WipeTower reporting half a spacing
of line width on top.

All of that now lives in estimate_wipe_tower_footprint, fed the planner
(resolve_wipe_tower_type mirrors Print::wipe_tower_type and the CLI's
Bambu Lab detection) and the filament ids rather than a count. Print
passes its own tool set; the PartPlate adapter derives the plate's ids
from the passed config and treats an explicit count as a floor, so the
CLI's count-only callers size per filament too. The placement clamp also
reserves a Type2 cone's base bulge, which the body box does not cover.

The planner-mirroring helpers sit beside the planners in WipeTower and
WipeTower2 so the two stay in sync; the libslic3r cases pin them to
footprints measured from generated G-code.
2026-09-09 15:45:16 +08:00
Hanif Koh
98acd687f7 Fixes for Wipe Tower Position Clamping
Validation grows the estimated body by the brim before the tower is
generated, so a tower whose brim leaves the bed is rejected up front
instead of at export. The scene reload re-clamps the stored position,
since set_default_wipe_tower_pos_for_plate does not rerun when painting
changes the filament count. The rectangle-wall footprint polygon gets its
two missing brim corners (it was a skewed quad), so the post-generation
check covers the whole brim.
2026-09-09 15:45:16 +08:00
Hanif Koh
e1efec7d6c Fix review findings in the shared wipe tower estimate
A raft is not a reason to reserve a tower. Print::apply runs
normalize_fdm_2, which clears enable_prime_tower for a plate that purges
one filament unless smooth timelapse or wrapping detection is on, so a
single-filament plate with a raft prints no tower at all and the estimate
was reserving bed area for one. Drop the input; need_wipe_tower is now
exactly the two exceptions normalize_fdm_2 honours, named there so the
next reason added has to be checked against it.

The GUI preview and the validation containment check each re-derived
"is a tower printed here" from the filament count instead of reading the
estimate, so both missed the towers printed with no tool change to purge
for. They now take the answer from the footprint, which is the drift this
shared estimate exists to remove. A tower that is not printed estimates to
zero, so its hull is degenerate and every check on it passes trivially -
the containment check needs no gate of its own.

WipeTowerData::width was written only by the pre-generation estimate and
left at zero for the whole post-generation life of the Print, while its
neighbour depth held the real value. Set it from the generator in both
branches.

The plate's height scan transformed every model part's full mesh per
instance on each scene reload, discarding all but the z extent. The
cached convex hull has the same z extent.

A plate loaded from a sliced .gcode.3mf holds no objects and its filaments
live in slice_filaments_info; the config-taking get_extruders overload
returned an empty list for it, which sized the tower for a placeholder two
filaments. It now answers the way the wx overload does, without reaching
the plater.

Also drop estimate_wipe_tower_size, which has no callers.
2026-09-09 15:45:16 +08:00
Hanif Koh
8df5e5e738 Extract and Unify Wipe Tower Estimation 2026-09-09 15:45:16 +08:00
HanifKoh
8a291f9d56 Confine config import to the preset directory (#15608)
import_presets reduced each zip entry to a basename by stripping only
'/', so on Windows an entry named with '\' separators kept its
directory components and was extracted wherever they pointed. Strip
both separators, and reject any entry whose name still escapes the
extraction folder.

The preset name from the JSON and the bundle id from
bundle_structure.json were joined onto the preset directory unchecked
as well, which let either of them write outside it on every platform.
Both are now validated before anything is written.

The check is the is_path_within_root helper the 3MF importer already
had, moved to Utils so both importers share it. It treats '/' and '\'
as separators on every platform, so a bundle that would escape on one
OS is rejected on all of them.
2026-09-09 15:35:21 +08:00
HanifKoh
4deadc9dce Make Tree-Support Deterministic (#15565)
* Make tree support deterministic without giving up its parallelism

* Break equal-distance ties in the tree support MST by coordinates

* test: cover the determinism this PR fixes

The MST unit tests here cover the tie-break, but the drop_nodes rework
has no test.

Adds two cases to the tree support suite. The thread-scheduling one
slices five configs twice each and compares the support point sequence,
which is what the node ordering moves. The MST tie one pins the branch
diameter and line width that carry Prim's equal-distance ties into the
toolpaths.

slice_with_tree_support takes an optional config list so the second case
can add the tree parameters it needs, and the double-slice comparison is
shared rather than written twice.

Both fail on main without this PR. The first passes from 60d1ceb580, the
second from e148865dd6.

---------

Co-authored-by: raistlin7447 <kris.austin@gmail.com>
2026-09-09 12:33:42 +08:00
Lam Wei Lun
a4c399d250 Merge main and resolved conflicts 2026-09-09 11:05:52 +08:00
Kris Austin
0f5891f25d build: clear 107 warnings - dead private fields (#15574) 2026-09-08 18:36:48 -03:00
HanifKoh
58bf267fdd Scale Min Junction Width to Prevent Fuzzy Skin From Failing Slice (#15566)
* Fix fuzzy skin failing the slice: the minimum junction width was unscaled

* Unit Tests For Fuzzy Fix

* Cover ridged multifractal noise in the fuzzy skin width floor test

Its output is not bounded to [-1, 1], so it scales past the configured
thickness and drives the junction width negative. The floor has to hold
for any noise value, not just an in-range one.
2026-09-08 16:57:33 +08:00
HanifKoh
8e064659ad Fix Non-Deterministic Slicing - Order Per-Layer Intersection Lines Canonically (#15563)
Fix nondeterministic slicing: order per-layer intersection lines canonically

Facet processing in slice_make_lines() is parallel, so the per-layer line
order depended on thread scheduling. make_loops() consumes that order for
island order and loop start vertices, so the same model could slice to
different G-code run to run.

Sort each layer's lines by a topology-based key. edge_type and flags are
appended to the key purely to break ties: two lines can share every id and
endpoint (a Horizontal facet can emit such a pair) and std::sort is not
stable, so without them that pair's order would stay thread-dependent.
2026-09-08 16:33:12 +08:00
SoftFever
fe29eadc34 docs: add documentation guidelines for subsystem design and updates 2026-09-08 14:59:45 +08:00
SoftFever
42d75e119a update .gitignore to ignore docs/superpowers 2026-09-08 14:45:37 +08:00
SoftFever
01a03d6d32 delete plan docs 2026-09-08 14:45:34 +08:00
Maximilian Ghazanfar
bcb4f17d9a fix(cli): resolve inherited presets through vendor manifests (#15438)
* fix(cli): resolve inherited presets through vendor manifests

* fix(cli): resolve typeless inherited presets

Probe the configured preset collections when a preset JSON omits its type. Reject missing, cross-type, and duplicate identities instead of silently selecting a candidate.

* fix(cli): allow missing app config during preset resolution

* fix(cli): tolerate malformed app config during preset resolution
2026-09-08 12:12:55 +08:00
HanifKoh
c61d2fe5d1 Fix the Folgertech i3 0.6 nozzle printable area (#15577)
The bed was declared as 0x0, 20x0, 200x200, 0x200 - a triangle - where the
0.4 nozzle profile and the printer have the 200 x 200 square. Found by the
profile validator once it placed the prime tower beside the test cube:
no tower fits inside that outline.
2026-09-08 11:11:54 +08:00
Kris Austin
5779274e5b test: cover support interface generation and tree support (#15575) 2026-09-07 18:02:14 -03:00
Kris Austin
40ce930e18 build: share cached objects between build directories and worktrees (#15573) 2026-09-07 17:54:54 -03:00
yw4z
9b1e141aa9 Allow saving preset without parent while it doesnt have parent profile (Detach from parent option for parentless profiles) (#15558)
* Update SavePresetDialog.cpp

* correct variable name
2026-09-07 19:57:37 +03:00
SoftFever
52ed9a8848 Optimize login user layout 2026-09-07 23:42:29 +08:00
SoftFever
37e1582c4c redesign filament_id (#15513)
# Description

This PR redesigns `filament_id` across OrcaSlicer's profile library, so
that one filament
product now carries one consistent id everywhere it ships, instead of a
hand-written value that
unrelated materials routinely shared. Minting scripts and CI checks come
with it so future
profiles comply by construction: a new filament takes its id from the
tool, and the checks
reject a hand-written, duplicated or drifted one before it can merge.

Unique, non-duplicated ids are a precondition for AMS-style spool
syncing to be dependable —
the id is what a printer matches a physical spool against, and while two
products share one, the
match is a coin toss. This PR lays that groundwork. A follow-up PR will
publish an OrcaSlicer
materials reference on the wiki, giving every system profile one place
to point at.

`filament_id` names one filament product, and it is what a device
matches a physical spool
against: Bambu AMS, Creality CFS, the Qidi box, Klipper and Snapmaker
all resolve a tray to a
preset by id alone, first hit wins. Those ids were written by hand, and
on `main` 99 of them
stand for 674 different products — `GFL99` alone covers 132, from
Anycubic PLA to Bambu PLA
Matte. Every consequence is silent: a spool resolves to whichever preset
happens to load first,
tray names and support-material flags are read off the wrong material,
and the second preset
holding a duplicated id disappears from the tray-edit dialog entirely.

The id is now a hash of `(filament_vendor, filament_type, filament
name)`, so one spool product
carries one id in every bundle that ships it, two vendors shipping the
same product converge on it
without coordinating, and a collision cannot be authored by hand. Every
ambiguity across 48
vendors is fixed rather than excused — no grandfather list and no
per-vendor carve-out, Bambu's
bundle included — and the resulting landscape is frozen in
`scripts/filament_id_snapshot.json`,
so a change to any filament's identity lands as a reviewable diff to one
file. CI now runs the
duplicate-subtype validation tree-wide instead of over Bambu only.

Letting the id follow the product meant correcting the identities
themselves. Generics that
shipped under a vendor prefix now have one name and one id everywhere
(`Blocks Generic PETG` is
`Generic PETG @Blocks`), presets whose `filament_vendor` or
`filament_type` contradicted the
spool are fixed, and duplicate pairs are collapsed onto the
better-configured survivor. Renames
carry `renamed_from`, so existing projects and user presets keep
resolving.

Bambu's printers, its AMS and its cloud know only Bambu's own catalog
ids, so those ids leave
the profiles entirely. The Bambu bundle mints like every other vendor,
and the printer agent
swaps in the catalog value only where an id crosses to or from a Bambu
printer — outbound MQTT
and FTP, the AMS mapping sent with a job, the ids written into a 3mf the
printer will read —
mapping back on the way in, so status messages, SD-card prints and
projects saved by an older
Orca or by BambuStudio all still resolve. The correspondence is
generated from BambuStudio's
own shipped bundle by `scripts/update_bambu_filament_ids.py`; an id with
no row is forwarded
untouched, a missing or malformed map degrades to no translation rather
than taking the app
down, and an agent whose printers already speak Orca's ids translates
nothing.

Two device-side bugs this work surfaced are fixed here as well. The Orca
Filament Library was
missing from the AMS material and calibration dialogs, which treated a
filament with no
`compatible_printers` as compatible with nothing while the rest of the
app treats it as
compatible with everything; and Creality CFS sync on a K2-family stock
0.4 nozzle picked the
wrong preset, an imprecise matcher that duplicate ids had been masking.

`docs/HLSD/filament_id.md` is the authoring rule for all of this.
`scripts/orca_id_tool.py`
mints both `filament_id` and `setting_id`, replacing
`assign_vendor_setting_ids.py`, and the
local `check_profile` scripts gained per-vendor scoping so one vendor
can be checked without a
tree-wide run. `scripts/tests/` covers the tooling; `tests/slic3rutils/`
covers the boundary
translation and the CFS matcher.

Ids change for most products and nothing forwards the old value, so a
tray or a calibration
record still holding one falls back to matching by filament type until
the filament is selected
once. Beyond the profile fixes above no print settings change, except
that a few presets stop
claiming printers a dedicated variant already covers.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->

`scripts/check_profile.sh`, the local twin of the "Check profiles" CI
job, with
`scripts/check_profile.bat` as its Windows entry point, passes on this
branch: the extra JSON
check reports no errors and no warnings, system validation and the now
tree-wide
filament-subtype check load all 66 vendors cleanly, all 1013 printer
presets slice, and
custom-preset validation passes against every fixture archive from
v1.9.0 to v2.4.2.

The id tooling has 176 unit tests (`python -m unittest discover -s
scripts/tests`). The C++
suites pass too — 332 in `tests/libslic3r` and 126 in
`tests/slic3rutils`, the latter including
the boundary-translation and Creality CFS matching cases added here.

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-09-07 19:22:11 +08:00
SoftFever
9e1b000e7f Hold every filament product to exactly one id, with no exceptions
filament_id is the plain mint of the product triple (filament_vendor,
filament_type, filament name), and nothing else feeds it. The tooling used to
accept any salt iteration of a preset's own triple, and its minting policy
stepped past ids that other products held in the tree or in the snapshot, so
which id a product got could depend on history. Every "salt split" in the tree
masked a redundant preset rather than a real need, and no shipped id is
salted, so salting goes entirely: no salt parameter, no id policy object, and
--generate no longer reads the snapshot.

--check now holds every declared and every inherited id to that one value and
lists each preset that misses it, variants under a wrong root included, instead
of folding them into the root's error. Two products whose triples mint one id
is reported as a collision naming both, and --generate refuses to write it;
the remedy is a rename so the triples differ. The Bambu catalog map generator
keys its rows by the same mint rather than by what the tree already ships.

No id changes: all 913 ids in the tree are already the mint of their triple,
so --generate is a no-op and the snapshot is untouched.
2026-09-07 19:20:32 +08:00
TheLegendTubaGuy
fcb128c51b Fix Traditional Chinese language selection (#15567)
Use the zh_TW-specific wxWidgets language enum so the packaged Traditional Chinese catalog passes the Preferences language filter.\n\nFixes #15561
2026-09-07 13:57:09 +03:00
SoftFever
b394ca891f Retire the superseded Snapmaker PLA-CF preset for the U1 0.4 nozzle
"Snapmaker PLA-CF @U1" and "Snapmaker PLA-CF @U1 0.4 nozzle" are the same
product on the same printer: both pin "Snapmaker U1 (0.4 nozzle)", and only a
filament_id salt split kept them apart. The first came with the original U1
profiles (#10225); the second with the tool-changer rework (#15039), which
added the 0.4/0.6/0.8 nozzle variants and left the older preset behind.

Drop the older one and re-mint the 0.4 variant onto OFhQf8ou, the id its 0.6
and 0.8 siblings already carry, so the product holds one id across the three
nozzles; renamed_from redirects the retired name. Users of the retired preset
get the #15039 tuning - 39 keys differ, including nozzle 230 -> 240 C, plate
55 -> 65 C and vitrification 150 -> 45 C - which is what the 0.6 and 0.8
variants already ship.

"Snapmaker PLA-CF @U1 base" stays. #15039 orphaned it by having the nozzle
variants inherit fdm_filament_pla directly, so it is unreferenced, but it is a
base in the vendor's own convention - 10 of the 14 @U1 families with nozzle
variants wire them to one - and it holds U1 loading and cooling values the
variants never set. Wiring them to it would change slicing output, which is
Snapmaker's call to make, not this PR's.

Claude-Session: https://claude.ai/code/session_01Q3zm9HuyskkSb4hynviV99
2026-09-07 17:29:38 +08:00
HanifKoh
886d43d37a Fix Support Fill Cost Thresholds Being Frozen By The First Call (#15564)
Fix support fill cost thresholds being frozen by the first call
2026-09-07 16:35:36 +08:00
SoftFever
eec4ae1e87 Retire the untuned re3D umbrella presets superseded by the nozzle variants
"Update re:3D profiles" (#13750) added the tuned "@0.4/@0.8 nozzle" and
"@0.8/@1.75 nozzle" variants but kept the five original un-suffixed presets,
trimming each to a stub that overrides only filament_vendor while still
claiming every printer of both nozzles. On any re3D printer the stub was
selectable alongside the ~50-key variant that actually tunes the material,
which is what forced five filament_id salt splits to keep the pair apart.

Drop the stubs. The variants already carry the products' ids, so nothing is
re-minted; renamed_from redirects each retired name to the smaller-nozzle
variant, and "re3D rPETG @0.8 nozzle" additionally takes over the
"re3D Greengate rPETG" mapping that lived on the deleted umbrella. Each
printer model's default_materials now lists the variants for its own
nozzles rather than the stub.
2026-09-07 15:45:34 +08:00
SoftFever
6943b6ddc3 Make Cubicon's "@base" filament presets true base profiles
Cubicon's nine "@base" presets were the only instantiated ones of the 196
"@base" filament presets in the library; the other 187 are instantiation:false.
Being selectable, and claiming xCeler-I and xCeler-Plus, they put two presets of
one product on those two printers - which is what forced the nine filament_id
salt splits: one product deliberately kept on two ids so AMS matching stayed
unambiguous.

Flip them to instantiation:false and drop the compatible_printers, setting_id
and filament_settings_id that a base has no use for, matching what the other
150 bases carry. The three "@Cubicon xCeler-{I,Mini,Plus} 0.4 nozzle" variants
keep one printer each, so every printer still sees exactly one preset per
product and they converge on its single id; the nine salted ids retire.

A base is not added to the preset collection, so user presets that inherited
the selectable "@base" - the v2.3.2-v2.4.2 fixtures have one per material -
would lose their parent. renamed_from on the xCeler-I variant, the first model
the base ever claimed, redirects them; a preset built on "@base" while printing
on an xCeler-Plus narrows to the xCeler-I.

The six default_materials / default_filament_profile fields named
"Cubicon PLA @Cubicon xCeler-<model>", dropping the " 0.4 nozzle" the presets
actually carry, so none of them ever resolved; each model now names its own
variant.

Claude-Session: https://claude.ai/code/session_01Q3zm9HuyskkSb4hynviV99
2026-09-07 15:45:29 +08:00
Kris Austin
494d50bd55 fix: restore Ctrl+drag panning on macOS (#15312)
On macOS wxWidgets reports Ctrl+left as a synthetic right button, which is
what made Ctrl+drag pan the canvas. #14999 added an unconditional correction
of the event's button state from wxGetMouseState(), which reports the
physical buttons and knows nothing about that synthesis, so the synthetic
right button was overwritten with a plain left button on every event.
Ctrl+drag then matched the left button mapping and rotated instead of
panning.

Apply the correction only when the event carries no button state at all.
On macOS wx populates button state only for the mouse-down and mouse-dragged
event types, which are also the only ones the Ctrl+left translation touches,
so the ImGui capture fix keeps every event it was added for.

Fixes #15214

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2026-09-07 14:16:45 +08:00
SoftFever
eebc82cc95 clean up 2026-09-07 12:14:05 +08:00
SoftFever
4b104bb574 Merge branch 'main' into feature/filament_id 2026-09-07 11:53:50 +08:00
SoftFever
3500a1e588 unify id generation scripts 2026-09-07 10:46:59 +08:00
Kris Austin
8d44b680bd fix: bumping the bundled uv version rebuilds the whole GUI library (#15553) 2026-09-06 20:23:47 -03:00
Kris Austin
43ce8c5e46 fix: SLIC3R_PCH=OFF now builds on Windows, allowing compiler caching (#15552) 2026-09-06 18:06:18 -03:00
Kris Austin
0365304ae0 fix: G-code preview drops comment text and cuts non-ASCII lines short (#15448) 2026-09-06 15:42:57 -03:00
Rodrigo Faselli
85dc866425 Spiral Inset infill (spiral-concentric infill) (#15085)
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-09-06 11:36:23 -03:00
SoftFever
06e665fca7 Merge branch 'main' into feature/filament_id 2026-09-06 22:34:06 +08:00
Kris Austin
0b6bbd85bd build: clear 75 warnings - hidden base overloads (#15542) 2026-09-06 11:08:57 -03:00
SoftFever
bf20b041e2 Make a filament's id depend only on the filament itself
A filament_id is now exactly what the preset's own filament_vendor,
filament_type and filament name mint, wherever it inherits from. Inheriting
settings no longer limits what a preset may claim, so the checks that policed
inheritance are gone, and so are the four grandfather lists that held thousands
of presets as permanent exceptions. The snapshot records sanctioned state rather
than excuses: one entry per id, carrying the product it names beside the presets
claiming it.

Profiles that disagreed are corrected instead of excused. The Elegoo TPU and
PAHT roots were named for a different product than all of their variants and
become TPU 95A and PAHT-CF; Elegoo PET-CF gains the filament_type its variants
already set; the Snapmaker breakaway support presets get an id of their own
rather than riding the PVA chain; and a BBL preset name carrying a doubled space
is fixed behind renamed_from. Their ids re-mint from the corrected identities.
The tooling and the design note also drop the word "family", which invited
reading a brand's Lite and Pro spools as one id.

No change to slicing output — only filament_id values, three preset names, the
inherits lines following those renames and the vendor indexes move.
2026-09-06 20:53:11 +08:00
SoftFever
4aa0e1d60b Translate filament ids at the printer boundary
Orca content-addresses every system filament, Bambu's included, but a printer,
its AMS and its vendor's cloud know only that vendor's own catalog ids. The
printer agent now translates between the two: outbound MQTT and FTP traffic, the
AMS mapping sent with a print job, and the ids written into a 3mf bound for the
printer all leave in the printer's own ids, while status messages, loaded
projects and SD-card prints arrive in Orca's. An id with no mapping passes
through unchanged, and an agent whose printers already speak Orca's ids
translates nothing at all.

Bambu's map is generated from BambuStudio's own shipped bundle; a missing or
unreadable file leaves every lookup an identity rather than taking the app down.
The profile check validates the map's shape, and profile CI now runs on the paths
that can change it. docs/HLSD/filament_id.md records the places the map
deliberately does not reach.
2026-09-06 20:53:11 +08:00
Ian Chua
7037e9cad3 fix: keep CRLF when patching CPython on Windows (#15346)
# Description

Under `core.autocrlf=input`, a Windows dependency build fails while
building CPython:

```
The system cannot find the batch label specified - begin_search
Cannot locate python.exe on PATH or as PYTHON variable
error MSB8066: ... exited with code 3
```

`git apply` inherits the caller's git configuration, so it rewrites the
patched `PCbuild/find_python.bat` to LF, and `cmd.exe` cannot resolve
`goto` labels in an LF batch file. `git init` already runs in the
extracted source, so setting `core.autocrlf` on that repository fixes it
and leaves the shared `PATCH_CMD` alone.

Only python3 is affected, its patch being the only one under `deps/`
that touches a `.bat`. `core.autocrlf=true` (the Git for Windows
default) and `false`/unset were never affected.

If a dependency build later fails with `patch does not apply`, delete
`deps/build` and rebuild. `git apply` is not idempotent, and that is
independent of this change.

## Tests

Visual Studio 2026 (18.6.3), `core.autocrlf=input`, built from an empty
`deps/build-dbg`:

| `deps debug` on | `find_python.bat` | CPython |
|---|---|---|
| `upstream/main` | 0 CRLF / 95 LF | fails at `begin_search` |
| this branch | 94 CRLF / 1 LF | builds |

It then stops at the debug staging step, a separate bug fixed by #15353;
with both applied it installs `libpython`. I hit this on a debug build,
but the patch step has no Debug/Release conditional.

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-09-06 13:07:35 +08:00
Ian Chua
cd2e8a8223 Merge branch 'main' into fix/python3-patch-line-endings 2026-09-06 13:07:26 +08:00
Kris Austin
c0c2cc5068 fix: Virtual Camera Tools install downloads the network plugin (#15540) 2026-09-05 22:11:40 -03:00
yw4z
71e4e19191 Fix crash on startup if mixed filament has invalid component (#15432) 2026-09-05 18:17:42 -03:00
ocidburn
6014f3fb43 Fix: guard the fifth null deref of the same kind, on the project-settings path (#15451) 2026-09-05 17:05:11 -03:00
Wegerich
5302f703c0 Automatically disable scarf seams when activating retraction calibration (#15543) 2026-09-05 15:36:10 -03:00
Ian Bassi
cd011e6385 Fix CHB parciall bridge (#15387) 2026-09-05 15:22:05 -03:00
Kris Austin
067dfa35c6 fix: make Windows debug builds work (#15353)
Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-09-05 14:14:59 -03:00
Kris Austin
2ad9c87dda fix: GIT_COMMIT_HASH forces full rebuilds and defeats compiler caching (#15537) 2026-09-05 14:08:38 -03:00
Kiss Lorand
0224741105 Fix organic support being printed into object top surfaces (#15539) 2026-09-05 11:48:35 -03:00
Kiss Lorand
134b9ad96e Fix organic tree support generating one less bottom interface layer than defined (#15525) 2026-09-05 11:47:58 -03:00
HanifKoh
1170b048e8 [CLI]: Fix Plate Config Reading and BuildVolume Height Checks (#15479)
* Fix incorrect early exit for CLI mode no-support preventing parameters from being read

* Use PartPlate's m_height to allow CLI to perform proper BuildVolume check

* Add safeguard against extruder_pintable_heights and extruder_areas vector size mismatch

* Preserve printable_height precision in PartPlate/PartPlateList

* Fixed multiple BuildVolume warning issue, and keep check_outside diff minimal
2026-09-04 23:24:59 +08:00
HanifKoh
df30e22427 [CLI]: CLI Crash Guards (#15477)
# Description

<!--
> Please provide a summary of the changes made in this PR. Include
details such as:
  > * What issue does this PR address or fix?
  > * What new features or enhancements does this PR introduce?
> * Are there any breaking changes or dependencies that need to be
considered?
-->

Part 1 of 3 of the CLI-mode bug sweep, split out of #15452 per review
feedback there. This PR contains the crash fixes.

## Fixes

- **`--outputdir`/`--datadir` with a missing parent directory aborted**
via unguarded `create_directory`. Directories are now created
recursively, with a graceful early exit and a specific error message if
creation fails.
- **`--slice` + `--export-3mf` segfaulted on a from-scratch slice**:
`ConfigOptionVector::get_at()` on an empty vector is `.front()` of an
empty vector (UB). Guards added for `filament_color`/`filament_id` at
the CLI call site, and inside `DynamicPrintConfig::get_filament_type`
for `filament_type`/`filament_is_support`/`filament_id`. Only *empty*
vectors are treated as missing — the existing clamp-to-front behavior
for merely out-of-range indices is preserved, so GUI callers are
unaffected.
- **OOB heap write from stale `filament_self_index` on
`--load-filaments`** (fixes #14181): a 3MF carrying more
`filament_self_index` entries than loaded filaments wrote past the end
of `old_variant_counts`. The guard validates both bounds — entries `>
filament_count` *and* non-positive entries (`< 1`), since a single `0`
in an otherwise-valid array indexes `old_variant_counts[-1]`.
- **Wrong printable-area check** for non-rectangular beds: use the
printable area's bounding box instead of a naive vertex calculation
(fixes #15363).
- **`nozzle_height` and `align_center` were not read into the arrange
config** in CLI mode.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
- Repro'd each crash on CLI before the fix; all resolved after.
- `tests/libslic3r` suite passes; full binary builds clean on Linux.
- Added `get_filament_type` unit tests 

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-09-04 15:46:03 +08:00
SoftFever
ec207e67a3 Mint content-addressed ids for the Bambu bundle 2026-09-04 15:01:58 +08:00
Ian Chua
9df23cab62 fix: opc updates being discarded 2026-09-04 14:59:53 +08:00
SoftFever
db3d684ee0 Scope the filament AMS length check to presets the vendor bundle references
The tree-wide length check (freed from its BBL/OFL carve-out last commit)
was flagging 21 pre-existing SeeMeCNC files that no vendor index references
and that therefore never load, turning CI red for files with no bearing on
what ships. The rule now only fires on presets a vendor's filament_list
actually references; every .json under the vendor's filament directory is
still parsed through the duplicate-key hook, so that coverage is unchanged.

Also removed a duplicated BAMBU_MAP_PATH definition: update_bambu_filament_ids.py
now imports the constant from assign_filament_ids.py, which it already imports
several other constants from, instead of recomputing the same path independently.
2026-09-04 14:42:57 +08:00
Lam Wei Lun
c6ab725584 Fixes issue with mixed filament being loaded into a real slot 2026-09-04 14:41:20 +08:00
SoftFever
40cc3340b1 Content-address Bambu filament ids and check profiles against the catalog map
Every vendor's filament_id declarations, Bambu's own bundle included, are now
minted and checked the same way: the GF* catalog space is reserved but
ownerless, format is validated unconditionally with no snapshot or BBL
exemption, and both --remint and the default assign pass treat a non-OF
declaration as one needing a fresh mint (so a future BambuStudio sync
self-heals instead of needing a manual pass). A new check validates
resources/printers/bambu_filament_ids.json against the tree it describes:
that it parses, carries its header, keys only OF ids, maps each Bambu id once,
and agrees with the tree on every product it shares. The redundant BBL/OFL
carve-out in the profile checker's length check is dropped too, so it runs
the same way for every vendor.

The BBL bundle itself hasn't been touched yet and still declares its old GF
ids, so TestRealTree.test_shipped_snapshot_matches_tree is expected to fail
here (209 declarations flagged) until the next commit re-mints the bundle
onto OF ids.
2026-09-04 14:25:00 +08:00
SoftFever
25e020f5c9 Add the generated map from Orca filament ids to Bambu catalog ids
scripts/update_bambu_filament_ids.py derives resources/printers/bambu_filament_ids.json
from BambuStudio's own shipped BBL bundle (cloned from upstream, or read from a local
checkout via --bambustudio-dir), pairing each Bambu catalog id with the Orca filament_id
we already ship for that product where we ship one, else a freshly generated one. Nothing
reads the map yet; later work uses it to translate ids at the Bambu printer boundary.
2026-09-04 13:31:19 +08:00
Lam Wei Lun
bbb4681b32 Merge branch 'main' into publish_3mf 2026-09-04 12:24:57 +08:00
HanifKoh
57ce18d70d [CLI]: CLI Argument Parsing Fixes (#15478)
* Reject invalid CLI argument values instead of silently accepting them

* Add read_cli accept/reject tests

* Update Option Type for LogFile argument

* Add read_cli vector option tests

* Accept common bool spellings on the CLI, cover --logfile in tests

* Add unit tests for truthy bool parsing
2026-09-04 11:31:42 +08:00
TheLegendTubaGuy
7acea3ed09 Honor symbolic default bed types for new printers (#15273)
Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-09-03 19:42:31 -03:00
Kris Austin
b370d8ef31 build: clear 31 warnings - copy and move declarations (#15507) 2026-09-03 18:35:10 -03:00
Kiss Lorand
c57ea0ec67 Fix nozzle type undo and unsaved changes tracking (#15515) 2026-09-03 18:28:26 -03:00
Kiss Lorand
6a13cc2ab6 Fix Detach from parent checkbox not updating visually (#15520)
Refresh detach-from-parent checkbox state

Allow the detach checkbox toggle event to propagate to the custom CheckBox control so it refreshes its bitmap after the value changes.
2026-09-04 00:25:21 +03:00
SoftFever
a4382ce3b3 reanme 2026-09-04 01:06:04 +08:00
SoftFever
df101ead91 fix more issues 2026-09-04 00:29:52 +08:00
Ian Chua
a426b3bae4 Merge branch 'main' into fix/python3-patch-line-endings 2026-09-03 21:50:50 +08:00
SoftFever
7c9b38ba04 remove retired_filament_ids.json 2026-09-03 21:03:42 +08:00
Kris Austin
f92bd81190 fix: build_win.bat builds with whatever clang-cl is first on PATH (#15504)
* fix: build_win.bat builds with whatever clang-cl is first on PATH

VsDevCmd appends the Visual Studio LLVM directory to the end of PATH, so
a standalone LLVM already on it shadows the Visual Studio one. -l -x
passed a bare clang-cl.exe for CMake to resolve, so the build ran on
whichever copy came first. For one reporter that was an LLVM 11, which
failed the compiler check before anything was compiled:

    -- Check for working C compiler: C:/Program Files/LLVM/bin/clang-cl.exe - broken
    lld-link: error: undefined symbol: __guard_eh_cont_table

The compiler is now resolved through vswhere and passed as a full path,
so PATH order no longer matters. CMake derives the linker from the
compiler directory, so lld-link follows. Only a configure passes it to
CMake, so -p and --no-configure resolve nothing and stay buildable on a
machine with no clang installed.

When Visual Studio has no clang toolset the script falls back to the
first clang-cl on PATH and names it. With none installed at all it now
errors with what to add, instead of failing later inside CMake. Every
clang-cl run that configures prints the compiler it resolved.

The suite gains a clang-cl fixture earlier on PATH than the Visual
Studio one, and an empty ProgramFiles(x86) to put vswhere out of reach,
which covers both fallbacks without touching the machine.

* fix: build_win.bat pointed at a solution file that is not there

The Visual Studio 2026 generator writes OrcaSlicer.slnx and the releases
before it OrcaSlicer.sln. The summary hard-coded the second, so the path
it printed after an MSVC build against 2026 was wrong.
2026-09-03 09:56:33 -03:00
SoftFever
fdc0ee18f1 fix vendor version 2026-09-03 17:47:29 +08:00
Ian Chua
07dafaf299 fix: default enable-ota flag and fixing startup missing vendor 2026-09-03 17:13:09 +08:00
Ian Chua
c5952c3308 Merge branch 'main' into fix/opc-support-for-ota 2026-09-03 14:54:51 +08:00
Lam Wei Lun
904796cf24 Correctness fixes. Remove hard-coded appends for printer settings 2026-09-03 14:12:51 +08:00
Lam Wei Lun
bcff39661c Comments and dead code cleanup 2026-09-03 13:40:58 +08:00
Lam Wei Lun
8c7160079e Revert clang-format changes then reapplied chagnes for Plater/PresetBundle. Fixed extruder masking incorrectness. Fix warning notifications stacking 2026-09-03 13:17:13 +08:00
SoftFever
fa8edd0f69 Merge branch 'main' into feature/filament_id 2026-09-03 12:16:38 +08:00
SoftFever
e2b251c145 Fix generic PLA and default filaments on the Creality Hi 2026-09-03 12:14:14 +08:00
SoftFever
21fdd7028f Fix spurious slice-validation failures when checking all vendors
The sweep now validates each printer with the filament that printer ships, so a run
over every vendor reports what a single-vendor run does. Validator only - no change
to slicing output or shipped profiles.
2026-09-03 11:25:49 +08:00
Lam Wei Lun
686b7f66ac Merge main and fixed conflicts 2026-09-03 10:55:01 +08:00
Kris Austin
e6501bb1ce build: stop rebuilding the Flatpak dependencies on every run (#15501) 2026-09-02 21:45:16 -03:00
Vladislav Khmelevsky
53c26a5724 fix: save 3d mouse settings (#15397)
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-09-02 20:21:27 -03:00
Rodrigo Faselli
3605614ee7 More Labels (#15511) 2026-09-02 19:06:01 -03:00
Kris Austin
8bf1d3ea84 fix: clear 12 warning sites that only appear away from Windows (#15437) 2026-09-02 18:18:17 -03:00
Kiss Lorand
51fd6327fe Fix omitted assembly parts with height ranges (#15499) 2026-09-02 18:15:18 -03:00
Ian Bassi
b81c0e30c1 Localization update (#15497)
* gettext

* AI Translated

* Update OrcaSlicer_es.po
2026-09-02 10:27:18 -03:00
Alexandre Folle de Menezes
640fd9f454 Fix misc. errors on GUI strings (#15468)
* Fix misc. errors on GUI strings

* Adding context to single-letter unit strings

* Fix duplicate strings on po files
2026-09-02 09:36:54 -03:00
SoftFever
ab90aec001 add per vendor support for check_profile check 2026-09-02 18:50:50 +08:00
Kris Austin
1749c293a6 build: clear 237 warnings - unused lambda captures (#15417)
* build: enable /Zc:lambda for MSVC

MSVC keeps its legacy lambda processor under /std:c++17, which rejects
reading a constexpr constant inside a lambda that does not capture it
(C3493). No other compiler requires that capture, and clang reports it as
an unused one, so the two cannot both be satisfied without the flag.

/Zc:lambda selects the conforming lambda parser that clang and GCC
already use. It is implied by /std:c++20 and /permissive-, so it is only
needed while we are on C++17. clang-cl is conforming already and does not
take the flag.

It requires VS2019 16.8, so build_release_vs.bat now says 16.8+.

* build: clear 237 unused lambda capture warnings

236 captures across 81 files, 142 of them `this`. Removing an unused
capture changes no behavior; clang does not report a capture whose type
has a non-trivial destructor, so nothing held only to extend an object's
lifetime is in this set.

Nine of them are the second half of the warning, "is not required to be
captured for this use", where the capture is a const or constexpr value
the body does read. Those depend on the /Zc:lambda change in the previous
commit. One of them, in FillRectilinear.cpp, had been worked around with
an #ifndef __APPLE__ guard around the capture list, which is now gone.

GUI_ObjectTableSettings.cpp captured its reset button only to read it
inside #ifdef __WXOSX_MAC__. That branch now takes the button from the
event it is already handling.

* build: fail configure on MSVC older than 19.28 instead of dropping /Zc:lambda

cl.exe answers an unrecognized /Zc: sub-option with warning D9002 and keeps
going, so on VS2019 before 16.8 the flag is silently ignored and the build
instead dies with C3493 in FillRectilinear.cpp, nowhere near the cause.

* fix: delete three locals that are now unused

Their only remaining use was the lambda capture this branch removed. The
Clang builds set -Wno-unused-variable, so the build never flagged them.

---------

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-09-02 07:38:05 -03:00
Lam Wei Lun
9b8d93bef2 merge main 2026-09-02 18:09:29 +08:00
Lam Wei Lun
85f14673f0 Only show the currently in used filaments for publishing 2026-09-02 18:09:23 +08:00
Lam Wei Lun
e17f932aff Update Publish Guide Links 2026-09-02 17:22:06 +08:00
SoftFever
7a0ca15df8 Merge branch 'main' into feature/filament_id 2026-09-02 15:34:20 +08:00
SoftFever
e523acc164 Add script to run full profile checks locally (#15496)
* Run the CI profile checks locally
2026-09-02 15:22:55 +08:00
Lam Wei Lun
f1719b5580 Fixes mixed filament growth bug. Fixes unit test 2026-09-02 14:29:15 +08:00
Lam Wei Lun
4654d24f6f Add a OrcaSlicer badge in the thumbnail preview for published 3MF projects. Add a visual indicator in the publish dialog to show that something in the section is toggled 2026-09-02 12:38:27 +08:00
Lam Wei Lun
f5984e7523 Merge main 2026-09-02 11:43:04 +08:00
Lam Wei Lun
f85902b0ce Preserving state of publish dialog 2026-09-02 10:45:47 +08:00
Clifford
b6ef6cf1be fix: out-of-bounds write migrating per-variant values when switching printers (#15456)
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-01 19:29:11 -03:00
Kiss Lorand
e8115658e0 Fix overhang fan control when overhang slowdown is enabled (#15158) 2026-09-01 18:07:02 -03:00
weng haishi
36228c4755 fix: prevent heap corruption when repairing models with auto-backup (#15395)
* fix: prevent heap corruption in model repair with auto-backup

The CGAL model repair (fix_model_with_cgal_gui) runs on a worker thread
that mutates the live ModelObject (split / delete_volume / set_mesh).
Those mutators transitively call save_object_mesh(), which hands the
object to the auto-backup manager. The manager clones and serializes the
object on its own thread via an internal Model documented as "visit only
in main thread". Running that path from the repair worker races the
backup thread on the shared model, causing use-after-free / heap
corruption -- EXC_BAD_ACCESS and libmalloc "corruption of free block"
aborts, always with the "cgal_fix_model" worker on the stack inside
add_object_mesh -> Model::add_object / delete_object.

Wrap the repair in a SaveObjectGaurd so the backup manager ignores the
object for the duration of the repair; a single backup is taken when the
guard is released on the main thread after the worker joins. This mirrors
existing batch-edit usage of SaveObjectGaurd (Model.hpp, GUI_ObjectList).

Repro: repair a multi-part / splittable object with auto-backup enabled
(Preferences > Backup); crashed within a few repairs on macOS arm64.

* Update FixModelByCgal.cpp

---------

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-09-01 16:39:12 -03:00
SoftFever
44a617a40d more fixes 2026-09-02 02:42:30 +08:00
Ian Bassi
e108ddfd56 Fix wrong JA jerk translation. (#15488)
Update OrcaSlicer_ja.po
2026-09-01 15:37:08 -03:00
Thomas
918d3914ba Fixed "jerk" translation inconsistency. (#15463)
* Fixed "jerk" translation inconsistency.

* Fixed an other "jerk" translation.
2026-09-01 15:05:10 -03:00
Kris Austin
21aa07b9cc build: add build_win.bat, a Windows build script for deps, slicer and toolchain setup (#15436)
* build: add build_win.bat, a Windows build script for deps, slicer and toolchain setup

build_release_vs.bat takes no options: what it builds is decided by editing
it. This adds build_win.bat alongside it, with short and long options, a
grouped help message, a dry-run mode that prints every command instead of
running it, and one option per thing a developer actually varies - the
configuration, the architecture, the compiler, the generator, the Visual
Studio release, how much gets rebuilt, and where the dependency tree lives.

It works from any directory, needs no developer command prompt in either
generator mode, and keeps CMake ahead of Strawberry Perl on PATH so a build
does not depend on how the user ordered their environment.

scripts/test_build_win.ps1 covers it with table-driven cases that run the
script under --dry-run and assert on the commands it prints, so nothing is
configured or built. The Windows build jobs wait on that suite.

Based on the script from OrcaSlicer#11097.

Co-authored-by: Ocraftyone <24759591+Ocraftyone@users.noreply.github.com>

* build: report what build_win.bat produced and what to do next

Every successful run now ends with a block naming what it built and the
commands to carry on with. Those commands repeat the flags that reproduce
the run, so a rebuild after a clang-cl Ninja build is not silently an MSVC
one. A failure gets a framed block naming the command that failed and a
retry scoped to the stage that failed, so a slicer error does not suggest
discarding an untouched dependency tree.

Installing is now opt-in behind -i. The install tree is a second full copy
of the build that exists mainly so the release can be zipped from it, while
the build tree is already runnable, with the DLLs beside the binary and
resources symlinked rather than copied.

Configuring against a dependency tree that was never built now names it
instead of failing several hundred lines into CMake's package resolution.

scripts/test_build_win.ps1 covers all of it, and gains -Name so one case
can be run without the full pass.

* build: let the test options stand alone, and say which build things apply to

--run-tests named two things to do and then did neither without -s, so
`build_win.bat -lx --run-tests` answered "Nothing to do". Both test
options now imply the slicer build they cannot happen without, unless
another action was already named, so -d --tests is still a dependency
build. --install-vs has turned on --install-deps the same way all along.

That makes them actions, so they move to the group that says so. -i goes
the other way, to the step toggles beside --no-configure and --no-gettext,
since it does not stand alone and adds a step rather than describing what
kind of build to make. An example shows the tests run with toolchain
flags, because flags pick which build gets tested and a bare --run-tests
would build and test a default tree the developer never asked for.

Two help lines named defaults that were not the defaults. --build-dir said
"instead of build/" and --deps-dir said "instead of deps/", but trees are
named for the configuration, compiler and architecture, so build/ is only
the default for a release x64 MSVC build, and deps/ is the source
directory rather than a tree anything is built in.

The hint for a missing dependency tree now carries the flags that
reproduce the run. It said "Build them with -d", which after a clang build
points at the MSVC tree, so following it left you no better off. Every
other suggestion the script makes already repeats them.

-k counted on the developer to read taskkill invocations as progress. It
now names each image and how many processes it is about to stop, which is
what explains the pause, and skips the ones that are not running instead
of printing taskkill's "not found" as though something had gone wrong. No
image can stop the rest.

The environment example set SLIC3R_ASAN, which -a already does, teaching
the long way round to a flag the script owns. It now sets options that
have no flag. The note under it said "Use these for a value containing
spaces. Ampersands are not supported", which named neither what "these"
were an alternative to nor where ampersands were a problem.

The test harness gains a NotExists field, because output cannot show what
a run did not create, and two cases needed to prove exactly that.

---------

Co-authored-by: Ocraftyone <24759591+Ocraftyone@users.noreply.github.com>
Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-09-01 15:02:19 -03:00
ndrwrbgs
ec06c8788d Minor display text fixes (#15454)
* Minor display text fixes

* Update in translations

---------

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-09-01 14:55:16 -03:00
Mikhail f. Shiryaev
96e85b1db5 Fix build with disabled precompiled headers (#15484)
Fix broken build with disabled PCH
2026-09-01 14:21:38 -03:00
SoftFever
afa806da18 Update Dremel and Ratrig filament profiles; remove deprecated entries and adjust versioning 2026-09-01 23:45:55 +08:00
Kris Austin
7eaff76cec build: use clang-cl for Windows CI builds (faster slicing and faster builds) (#15428)
* ci: build the Windows x64 dependencies and slicer with clang-cl

Passes -l -x from the Windows jobs, using the clang-cl and Ninja options
added in #15373. Ninja runs each dependency's build step as a plain command,
so the jobs set up a VC environment for OpenSSL's nmake. arm64 stays on MSVC
for now.

The deps cache key gains the compiler, so windows-x64 becomes
windows-x64-clang and windows-arm64 becomes windows-arm64-msvc.

* deps: select OpenSSL's ARM64 target from DEPS_ARCH

CMAKE_GENERATOR_PLATFORM is only set by -A, which Ninja never receives, so
the Ninja build selected the x64 target on ARM64. DEPS_ARCH is derived from
CMAKE_SYSTEM_PROCESSOR and is already independent of the generator.

* ci: build the Windows ARM64 dependencies and slicer with clang-cl

Three dependencies need handling first. libpng and OpenCV each build an ARM
SIMD path that does not compile with clang-cl, so those paths are off; PNG
already had the same opt-out for Apple ARM. OCCT is built with cl, since
clang-cl cannot emit one of its large generated files and there is no option
to turn that off. All three are gated to Windows ARM64 with clang.
2026-09-01 10:30:45 -03:00
SoftFever
bee0df825e fix filament_vendor 2026-09-01 18:36:44 +08:00
Lam Wei Lun
d00af63a61 Removes identity matching for when slots need to grow without writing type key 2026-09-01 18:18:33 +08:00
Lam Wei Lun
6985075c5b Change the PUB badge to OrcaSlicer's color 2026-09-01 18:17:28 +08:00
Lam Wei Lun
90d5654db9 Shifted the guide links to the bottom left of the publish dialog 2026-09-01 17:56:47 +08:00
SoftFever
ab21af6b08 fix filament names 2026-09-01 17:44:12 +08:00
SoftFever
6ec904074b Give generic filaments one name and one identity across every vendor 2026-09-01 17:26:57 +08:00
Lam Wei Lun
7133d6b225 Added wiki and youtube guide link as placeholders. Add to recently opened in home screen after publishing. Show PUB badge. Add .published as a file save name hint. 2026-09-01 16:59:25 +08:00
Lam Wei Lun
49c4b09db6 Show alias instead of full name in publish dialog 2026-09-01 14:56:03 +08:00
Lam Wei Lun
174d23e22f Fixes windows light mode text issues 2026-09-01 12:40:41 +08:00
SoftFever
7c063b2933 Merge branch 'main' into publish_3mf 2026-09-01 12:20:48 +08:00
SoftFever
e1c28a5f7c Merge branch 'main' into feature/filament_id 2026-09-01 11:43:57 +08:00
SoftFever
417a6d7c30 add log 2026-09-01 11:43:00 +08:00
SoftFever
261cc19c59 update doc
update doc
2026-09-01 11:43:00 +08:00
Kris Austin
9933cab59f build: drop the pkg-config requirement from the Windows build (#15469)
The FFmpeg camera view port made pkg-config a required build tool on
Windows. Windows does not ship one, so every Windows developer has to
install it before the build will configure:

  Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
  Call Stack (most recent call first):
    CMakeLists.txt:480 (find_package)

Nothing on Windows needs it. FFmpeg there is a prebuilt zip unpacked
into the deps prefix, whose DLLs the top level CMakeLists already names
by exact soname. The version is fixed before configure runs, so
find_library against that prefix does the job, as on macOS.

Also drops the CI step that installed pkg-config, gated on !SELF_HOSTED
so it never ran on self-hosted runners, and re-comments the if(WIN32)
block that #15234 uncommented only for that find_package.
2026-09-01 09:19:58 +08:00
Kris Austin
5436e422b9 ci: build macOS with 3 parallel jobs instead of 1 (#15393) 2026-08-31 16:59:58 -03:00
Leo Lobato
ca903faa56 Fix uninitialized first_layer_time on CLI-sliced 3MF (#13429)
PartPlate::store_to_3mf_structure read first_layer_time from the indirect cali_bboxes_data struct,
which the GUI populates at Plater.cpp:10600 but the CLI never writes to. The result was uninitialized
memory leaking into slice_info.config

Read directly from get_slice_result()->initial_layer_time, which is populated by
GCodeProcessor::finalize() in both code paths and matches the pattern already used a few lines
above for gcode_prediction.

Also default-initialize PlateBBoxData::first_layer_time to 0.0f as a defense against any other consumer
reading it without an explicit write.
2026-08-31 16:36:55 -03:00
Kris Austin
fcf6f0a3a5 build: clear 54 warnings - dead private fields (#15423)
build: clear 54 dead private fields

54 of the 161 -Wunused-private-field warnings, across 31 files. These are
the ones needing no judgment. Each member is declared once and appears
nowhere else in src/, counting the .mm and .c sources as well as .cpp and
.hpp, so nothing writes them and nothing reads them. Every removal is a
whole line, and no declaration shares a line with another member.

The remaining 107 are left alone. Those members are mentioned elsewhere,
usually assigned and never read, where the fix might be deleting the
member or might be restoring a read that went missing.
2026-08-31 16:36:52 -03:00
Kris Austin
3cda90e3a1 Merge branch 'main' into fix/python3-patch-line-endings 2026-08-31 11:30:13 -05:00
SoftFever
e8b2a9fca0 Merge branch 'main' into feature/filament_id 2026-08-31 22:11:38 +08:00
Kris Austin
36740ffdd8 build: clear 53 warnings - discarded values and i18n markers (#15421)
build: clear 53 unused value warnings

49 of them are deliberate i18n markers. L(s) expands to s, so
L("Main Extruder"); is a string literal as a statement and its value is
discarded. The strings have to stay, because the real values come from
printers/*.json at runtime and xgettext cannot scan those. Each block is
now a static const char *const markers[], which uses the values rather
than discarding them. Extraction is unchanged: the xgettext invocation
from scripts/run_gettext.bat gives 76 msgids over the two marker files
before and after, with identical msgid and msgctxt sets.

The other 4 are statements with no effect. AMSItem.cpp:117 and :174
construct and drop a wxColour(255, 255, 255); AMS_TRAY_DEFAULT_COL is
that colour, and the line above already assigns it. UpgradePanel.cpp:865
reads a member and drops it.

wgtDeviceNozzleSelect.cpp:269 writes
if (item; auto ptr = m_nozzle_rack.lock()), which puts the null check in
the init-statement position where its value is discarded, so the check
never runs, and sGetNozzlePosId then dereferences item. Nothing reaches
that today, because the only sender of the event sets itself as the
event object and the dynamic_cast always succeeds. The check now runs.
2026-08-31 10:55:42 -03:00
raistlin7447
4d67159ea2 fix: scope the CRLF override to the git apply invocation
git config wrote core.autocrlf into the repository git init creates in the
extracted CPython source. Nothing outside deps/build reads that repository, so
the setting was already contained.

-c applies the override to the one invocation instead, so no repository config is
written at all. It cannot reuse PATCH_CMD, so the shared flags are spelled out here.
2026-08-31 08:30:09 -05:00
Lam Wei Lun
6fef33cdb3 Merge main 2026-08-31 18:01:31 +08:00
Lam Wei Lun
684cd37f8d UI Fixes and Polish 2026-08-31 18:01:15 +08:00
Ian Chua
b585d9f3d9 feat: add new profiles over ota & updater url via app config 2026-08-31 17:45:29 +08:00
SoftFever
5add7a5062 Show Orca Filament Library filaments in AMS and calibration dialogs
These dialogs treated a filament with no compatible_printers as compatible with
nothing, while the rest of the app treats it as compatible with everything, so
the entire Orca Filament Library was missing from the AMS material and
calibration filament lists. They now resolve compatibility the same way the
plater does, and a vendor profile still supersedes the library generic of the
same name.
2026-08-31 16:25:59 +08:00
Lam Wei Lun
21c0bf795a Fixes indentation on the Full Publish toggle 2026-08-31 16:19:10 +08:00
Ian Chua
c4fea8ad24 gate workflow with enable_ota flag in app config 2026-08-31 15:48:13 +08:00
Lam Wei Lun
a6483e79b2 Fix ImGui crash 2026-08-31 14:50:15 +08:00
Ian Chua
27e99ca713 feat: initial plugin auditing workflow (#14989)
# Description

This is an initial draft of the plugin audit workflow.

It focuses on the user experience and developer-facing permission
workflow. It does not yet include the complete implementation of every
operation that should be audited, such as the full filesystem,
networking, and process-spawning event coverage.

## User workflow

When a plugin is loaded:
1. The plugin’s register_capabilities() function is executed.
2. The plugin declares the permissions it requires.
3. OrcaSlicer displays a permission dialog listing the requested
resources.
4. If the user grants access:
  - The permission is persisted in the plugin’s .install_state.json.
  - Capability registration continues.
  - The plugin is materialized and loaded.
5. If the user denies access:
    - Plugin loading fails before capabilities are materialized.
    - on_load() is not called.
- The plugin’s install state is marked with "enabled": false to prevent
repeated automatic load attempts.

At runtime, if a plugin accesses a resource that was not approved during
loading, the audit hook displays another permission dialog. For
filesystem requests, the dialog identifies the requested filepath.
  - Granting access persists the permission and allows the operation.
  - Denying access raises a Python PermissionError.
- The error propagates to the host, which records the failure and
unloads the plugin.

Host-side traceback logging is performed outside the plugin audit
context so that logging does not generate additional permission dialogs.

## Developer-facing API

Plugins can declare filesystem read permissions through the new API:
```python

import orca
AUDIT_PATH = __file__


@orca.plugin
class ExamplePackage(orca.base):
   def register_capabilities(self):
        orca.request_permissions(
            fs_read=[AUDIT_PATH],
        )
        orca.register_capability(ExampleCapability)
```
orca.request_permissions() must be called from register_capabilities()
while the plugin is being loaded.

Currently supported permission:
orca.request_permissions(fs_read=[...])

The paths should be explicit filesystem paths that the plugin intends to
read. The host deduplicates repeated paths, presents the request after
registration completes, and persists granted paths in the plugin
install-state sidecar. This API is still experimental, and is by no
means the final implementation.

Support for additional permission categories, including filesystem write
access, networking, and process spawning, is reserved for subsequent
work.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

<img width="869" height="799" alt="image"
src="https://github.com/user-attachments/assets/8a5903cc-0cbb-45a8-b88a-706d6cba790f"
/>


## Tests

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-08-31 14:29:36 +08:00
Lam Wei Lun
fff0efdb27 Fixes filament import bug 2026-08-31 13:57:21 +08:00
Lam Wei Lun
6ffb20a7f5 Update translations. Change import filament message to warning instead. Change messages to be simpler 2026-08-31 12:08:08 +08:00
Lam Wei Lun
06517e623f Fixes issue where user imports a 3MF file where filament slots exceeds the maximum number of slots that user has on its printer 2026-08-31 10:46:23 +08:00
SoftFever
8994ab9f98 make the script executable 2026-08-30 20:56:12 +08:00
SoftFever
ea0242feda Merge branch 'main' into feature/filament_id 2026-08-30 20:54:33 +08:00
SoftFever
56a452875e Port FFmpeg based camera view from BambuStudio (#15234)
* Add ffmepg dep

* NEW: reimpl wxMediaCtrl from ffmpeg

Jira: none
Change-Id: I46a47118a7649b2a50fcce8911e2888342ef25de
(cherry picked from commit d6c7f08769c8cfdbbf0e80ad280c9b3408a3c27d)
(cherry picked from commit 94d91be60bfe9bbbcdd21f85b46abc3faf126f17)

* FIX: reset bambu lib after restart network plugin

Change-Id: I4a3a4b7420745835ca3fa00c6edebe9d8d98cbf6
Jira: STUDIO-7571
(cherry picked from commit 28d9c6743fae80bfd40e4ee391e30d62cb16d4ab)

* FIX: ffmpeg decoder memory leak

Change-Id: I997572b5730618a969959f9b24c405d80fa9f83c
Jira: STUDIO-7597
(cherry picked from commit 342cea29bd9593fa89cbb33caff58055b46ebeec)

* FIX: install ffmpeg symbolic sos

Change-Id: Ia4a45182cefcf62a7a4b4a5c89c92251609c5a68
Jira: none
(cherry picked from commit b7f8fa1efdbe0ac2cc896ca24f063f5894fe9f90)

* FIX: ffmpeg swscale & frame_size

Change-Id: I9f4cb8c739b726f7e5cdbe0df7ed06b2eb2154d5
Jira: STUDIO-7624
(cherry picked from commit 5a2c75d835fb437667b590a803eef148baa30875)

* FIX: wxMediaCtrl3 idle image & center pos

Change-Id: Ib9652573e31bfd6229f174c0a1388942d9d98822
Jira: STUDIO-7633
(cherry picked from commit d51247c46e26460b151de79c598d81151280e79c)

* FIX: AVVideoDecoder sws_ctx_ == nullptr on zero size

Change-Id: I9698354bb1f341e276ec9780d4ef4fcd9f8a1028
Jira: STUDIO-7706
(cherry picked from commit ff622e25026a8471c39eb308cf5b115c4a9d84aa)

* fix:cannot open shared object file on linux

Change-Id: Ica66500506cfe8932eac3ae0a58fb7ff30d1da9b
jira:none
(cherry picked from commit febd1aeb4d453bc96571fa5e5727e9e10046cb80)
(cherry picked from commit 5ad579f929154779abd84b01438fd235c647dbf5)

* NEW:add ffmepg build Cmake

buildLinuxImage add ffmpeg so file

jira:nojira

Change-Id: I3e1be53aa58a179b8d9ae048ed7538de3ae8d111
(cherry picked from commit 2d70a1bcb6a5ba601525b08a38e7610f018fe106)

* FIX: ffmpeg cmake install error

jira:nojira

Change-Id: I74cc0f7c86b5364e55cad2af2bd9a82306ee6864
(cherry picked from commit 805df79e3bb044dac29ec1c06736751ccf3675f9)

* FIX: decode video to wxImage on Linux

Change-Id: I5e332a1b0622b3dfc70ac5c4c3bfa62b3411ebdc
Jira: none
(cherry picked from commit c787ba921a31f259e8eb23fd59f178e96279caf9)

* FIX: wxMediaCtrl3 enter Stopped state soon

Change-Id: I120e9d4b9f85599a184650d1d95fe2bec42af171
Jira: STUDIO-8280
(cherry picked from commit 7648d96305d510b9e97f22124961de5115cde830)

* FIX: reset decode buffer zero when scale width changed

Change-Id: Iaa2f99111dd5f7228b7b25e1be0a8cbdbfe982a6
Jira: STUDIO-8422
(cherry picked from commit 659ebc7d07a8f6045ba5443141b44277d7257cec)

* slic3r: Fix missing declarations in wxMediaCtrl3.h

src/slic3r/GUI/wxMediaCtrl3.h:80:10: error: ‘condition_variable’ in namespace ‘std’ does not name a type
   80 |     std::condition_variable m_cond;
      |          ^~~~~~~~~~~~~~~~~~
src/slic3r/GUI/wxMediaCtrl3.h:27:1: note: ‘std::condition_variable’ is defined in header ‘<condition_variable>’; did you forget to ‘#include <condition_variable>’?
   26 | #include "Printer/BambuTunnel.h"
  +++ |+#include <condition_variable>
   27 |
src/slic3r/GUI/wxMediaCtrl3.h:81:10: error: ‘thread’ in namespace ‘std’ does not name a type
   81 |     std::thread m_thread;
      |          ^~~~~~
src/slic3r/GUI/wxMediaCtrl3.h:27:1: note: ‘std::thread’ is defined in header ‘<thread>’; did you forget to ‘#include <thread>’?
   26 | #include "Printer/BambuTunnel.h"
  +++ |+#include <thread>
   27 |

In file included from src/slic3r/GUI/MediaPlayCtrl.h:17,
                 from src/slic3r/GUI/MediaPlayCtrl.cpp:1:
src/slic3r/GUI/wxMediaCtrl3.h:77:13: error: field ‘m_frame’ has incomplete type ‘wxImage’
   77 |     wxImage m_frame;
      |             ^~~~~~~

(cherry picked from commit 727a73333bd67acf5ff2b1c51ff284c2bacdb413)

* slic3r: Fix missing includes in AVVideoDecoder

In file included from src/slic3r/GUI/AVVideoDecoder.cpp:1:
src/slic3r/GUI/AVVideoDecoder.hpp:28:20: error: ‘wxImage’ has not been declared
   28 |     bool toWxImage(wxImage &image, wxSize const &size);
      |                    ^~~~~~~
src/slic3r/GUI/AVVideoDecoder.hpp:28:36: error: ‘wxSize’ has not been declared
   28 |     bool toWxImage(wxImage &image, wxSize const &size);
      |                                    ^~~~~~
src/slic3r/GUI/AVVideoDecoder.hpp:38:10: error: ‘vector’ in namespace ‘std’ does not name a template type
   38 |     std::vector<uint8_t> bits_;
      |          ^~~~~~
src/slic3r/GUI/AVVideoDecoder.hpp:9:1: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’?
    8 |     #include <libswscale/swscale.h>
  +++ |+#include <vector>
    9 | }

src/slic3r/GUI/AVVideoDecoder.cpp:145:89: error: invalid use of incomplete type ‘class wxBitmap’
  145 |     bitmap = wxBitmap((char const *) bits_.data(), size.GetWidth(), size.GetHeight(), 32);
      |                                                                                         ^

(cherry picked from commit 781ce14e061366da64fdc2d0d592fa35ee57e67e)

* slic3r: Fix missing includes in wxMediaCtrl2

src/slic3r/GUI/wxMediaCtrl2.cpp: In lambda function:
src/slic3r/GUI/wxMediaCtrl2.cpp:170:13: error: ‘wxMessageBox’ was not declared in this scope; did you mean ‘wxInfoMessageBox’?
  170 |             wxMessageBox(_L("Your system is missing H.264 codecs for GStreamer, which are required to play video.  (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Bambu Studio?)"), _L("Error"), wxOK);
      |             ^~~~~~~~~~~~
      |             wxInfoMessageBox
src/slic3r/GUI/wxMediaCtrl2.cpp: In member function ‘void wxMediaCtrl2::Load(wxURI)’:
src/slic3r/GUI/wxMediaCtrl2.cpp:179:5: error: ‘wxLog’ has not been declared
  179 |     wxLog::EnableLogging(false);
      |     ^~~~~

(cherry picked from commit 73908d38d8b1f7c8dcae92d55711bc08cbfff23c)

* slic3r: Fix missing wxPaintDC declaration

src/slic3r/GUI/wxMediaCtrl3.cpp: In member function ‘void wxMediaCtrl3::paintEvent(wxPaintEvent&)’:
src/slic3r/GUI/wxMediaCtrl3.cpp:121:5: error: ‘wxPaintDC’ was not declared in this scope; did you mean ‘wxPoint’?
  121 |     wxPaintDC dc(this);
      |     ^~~~~~~~~
      |     wxPoint

(cherry picked from commit 9ab5009235d212699f91e01d7f930f92849ed1e3)

* slic3r: Fix missing BOOST_LOG_TRIVIAL declaration

src/slic3r/GUI/wxMediaCtrl3.cpp:181:23: error: ‘info’ was not declared in this scope
  181 |     BOOST_LOG_TRIVIAL(info) << msg.ToUTF8().data();
      |                       ^~~~
src/slic3r/GUI/wxMediaCtrl3.cpp:181:5: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  181 |     BOOST_LOG_TRIVIAL(info) << msg.ToUTF8().data();
      |     ^~~~~~~~~~~~~~~~~

(cherry picked from commit c5c41e20ca2fc7f3b53a4c769961f73df6992008)

* FIX: wxMediaCtrl3 zero size crash

Change-Id: I16a3f7b3afe142bb957a1740b8e8c9820c92b349
Jira: STUDIO-8522
(cherry picked from commit 8cdaea1162ccbcc0bd03ecd99346f3b9cf52cf64)

* FIX: TabCtrl button margin

Change-Id: If8b05a4ef9efb8b57989ee1de6543631e5a3cf90
Jira: STUDIO-8265
(cherry picked from commit 1c5e65707109ad0582b6442cf8e515344f799c27)

* ENH: wxMediaCtrl3 display video frame at pts

Change-Id: I8847236d2307101e5f2befc6477cd20b3691841c
Jira: none
(cherry picked from commit 05328da4612c11d50f6fd90e872b97f5f8f46b1d)

* Fix: fix memory leak caused by ffmpeg decoding

Change-Id: I162ad4ea8d4601c1ffe17a65f292566c9dea6f0b
jira: no-jira
(cherry picked from commit eb20d03186c86b7398b97e3bae0a3c7a7b81c58c)

* ENH: update some missing codes

jira: no-jira
Change-Id: Icb2da53911430ac144b0fb601637a7ad31e7e8db
(cherry picked from commit 13b4213f8a24c76c16e49daf905fa29c0f646a5a)

* Fix build

* Update idle image

* Attempt to fix Windows CI build

* FIX: GTK video window resize ran in a free function without member access

wxMediaCtrl_OnSize referenced wxMediaCtrl2's private m_gtk_video_window,
which does not compile on Linux/GTK. Move the resizing into
wxMediaCtrl2::DoSetSize where the member is in scope.

* Install required tools for Linux

* Install required tools for macOS

* Add ffmpeg to flatpak

* Fix Linux build

* Try fix appimage build

* Fix Linux AppImage bundling of deps-built shared libraries

The AppImage dependency closure resolves each bundled ELF's DT_NEEDED
entries with plain ldd, which cannot resolve the deps-built FFmpeg stack
(libavcodec/libavutil/libswscale) once it is copied into the bundle:
those libs are not installed in any standard loader path and carry no
RUNPATH of their own, so ldd reports the siblings as missing and the
build aborts. Extend the loader path with the bundle directory plus the
source directories of already-bundled files (mirroring
scripts/check_appimage_libs.sh), and key the dedup set on the bundled
file path instead of the source path so dependencies resolved from the
bundle directory are not copied onto themselves.

Co-Authored-By: Claude <noreply@anthropic.com>

* Attempt to fix Linux unit test

* Fix Linux unit tests loading deps-built FFmpeg libraries

The test executables that link libslic3r_gui (which links PkgConfig::LIBAV)
have a load-time dependency on the deps-built FFmpeg shared libraries. The CI
unit-test runner only receives the tests artifact, so those libraries were
unresolvable there (Ubuntu 24.04 ships libavcodec.so.60, not .61). Copy the
libraries next to each affected test executable and give it an $ORIGIN rpath,
mirroring the Windows branch that copies DLLs next to every test executable.
orcaslicer_copy_sos now places the copies in the per-config output directory
for multi-config generators, like orcaslicer_copy_dlls does.

Co-Authored-By: Claude <noreply@anthropic.com>

* Add design doc for macOS FFmpeg player

Co-Authored-By: Claude <noreply@anthropic.com>

* Add implementation plan for macOS FFmpeg player

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: use FFmpeg media player on macOS with static FFmpeg

* build: build static-only FFmpeg for macOS deps

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor: remove old BambuPlayer-based media player from macOS

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: add static FFmpeg NOTFOUND guard; drop dead wxMediaCtrl2.h include

* build: drop redundant --enable-shared in FFmpeg deps configure

The literal --enable-shared was always overridden by ${_link_cmd}
(--enable-static --disable-shared on Apple, --enable-shared elsewhere)
and FFmpeg configure processes these flags in order, last one wins.
Remove it and the stale comment documenting the workaround.

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor: remove dead wxMediaCtrl2 player

wxMediaCtrl2 was never instantiated on any platform (USE_WX_MEDIA_CTRL_2
is 0 everywhere); wxMediaCtrl3 replaced it. Delete wxMediaCtrl2.cpp/h,
drop them from the Win/Linux source list and the gettext list.txt, and
collapse the preprocessor-dead #if USE_WX_MEDIA_CTRL_2 gate in
MediaPlayCtrl.h.

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor: remove dead GStreamer bambusrc plugin and its build dep

gstbambusrc was the GStreamer source element for the old wxMediaCtrl2
Wayland player, its only consumer (deleted in the previous commit).
The new FFmpeg player handles bambu:/// URIs through the Bambu C API
instead. Drop the plugin and the gstreamer-1.0 / gstreamer-base-1.0
REQUIRED pkg-config dependencies that existed solely for it.

Co-Authored-By: Claude <noreply@anthropic.com>

* build: move FFmpeg media player sources to the common GUI list

wxMediaCtrl3 and AVVideoDecoder are platform-neutral C++ compiled on
all three platforms, so list them once in the common SLIC3R_GUI_SOURCES
instead of duplicating them in the APPLE and non-APPLE branches. The
else() branch is now empty and drops out entirely.

Co-Authored-By: Claude <noreply@anthropic.com>

* deps: disable FFmpeg VideoToolbox/AudioToolbox HW-accel on macOS

The static libavcodec.a/avutil.a compiled the auto-detected
videotoolbox/audiotoolbox objects, which reference VideoToolbox
framework symbols (_VTDecompressionSession*). The app link line
happened to satisfy them transitively, but the orca_stubgen module
link (CI-only) failed with undefined symbols. The player decodes in
software (swscale), so disable both HW-accel paths to keep the
static libs self-contained.

Co-Authored-By: Claude <noreply@anthropic.com>

* Copy the decoded frame instead of aliasing the decoder's buffer

wxImage with static_data set stores the pointer and never copies it, so the
frame handed to wxMediaCtrl3 aliased AVVideoDecoder::bits_. That buffer is
rewritten by the next sws_scale with the mutex released, reallocated by
bits_.resize() when the window grows, and freed outright when the decoder
leaves PlayThread's loop body at end of stream, all while the GUI thread may
be painting from it.

Windows is unaffected either way, since toWxBitmap already copies the bits
into GDI.

---------

Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: BBL\chuan.he <chuan.he@bambulab.com>
Co-authored-by: MackBambu <yongfang.bian@bambulab.com>
Co-authored-by: Bastien Nocera <hadess@hadess.net>
Co-authored-by: chao.zhang <chao.zhang@bambulab.com>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-08-30 11:35:24 +08:00
SoftFever
600f0f20bd Copy the decoded frame instead of aliasing the decoder's buffer
wxImage with static_data set stores the pointer and never copies it, so the
frame handed to wxMediaCtrl3 aliased AVVideoDecoder::bits_. That buffer is
rewritten by the next sws_scale with the mutex released, reallocated by
bits_.resize() when the window grows, and freed outright when the decoder
leaves PlayThread's loop body at end of stream, all while the GUI thread may
be painting from it.

Windows is unaffected either way, since toWxBitmap already copies the bits
into GDI.
2026-08-30 11:19:06 +08:00
Kris Austin
05b3c9053e fix: Cyrillic and other non-Latin text shows as question marks or garbage (#15419) 2026-08-29 14:48:05 -03:00
SoftFever
dfb102f68d Merge branch 'main' into dev/ffmpeg-player 2026-08-29 22:44:08 +08:00
Ian Chua
d9fa43f1d7 fix: add opc support for ota workflow 2026-08-28 19:40:31 +08:00
Kris Austin
db29f570bd build: clear 50 warnings - pessimizing moves and null checks that cannot fail (#15408)
* build: remove std::move that blocks copy elision

std::move wrapped around a temporary, or around a local being returned,
stops the compiler constructing it in place. Each edit is the fix clang
suggests, which is to delete the std::move call and keep its argument.

Three of the 39 sites save a move, the two return std::move(local) in
Print.cpp and TreeSupport.cpp:2749. The rest are equivalent either way
and match how the codebase already writes this elsewhere.

Clears 39 -Wpessimizing-move warnings.

* build: drop null checks on references and this

A reference cannot be bound to null and this cannot be null, so the
compiler folds these conditions to true and drops the guard. Seven are
if (&bitmap && bitmap.IsOk()), where IsOk() already does the work; two
test this directly. The guarded code runs either way, so removing the
dead operand changes nothing.

Clears 11 -Wundefined-bool-conversion warnings.
2026-08-28 08:05:59 -03:00
Gabriel Monteiro
cc390f11ee feat(build): build the missing dependencies from the main CMake configure (#15373)
* fix(deps): build the dependencies from scratch with clang-cl

Six dependencies fail once the superbuild compiles them with clang-cl instead
of cl:

- OpenSSL never goes through CMake. Its VC-WIN64A makefile only works with cl,
  and an unquoted clang-cl path with spaces produces no .obj files at all, so
  the lib step dies with LNK1181. Pin the upstream toolchain.
- Boost.Container's bundled dlmalloc passes int* to the Interlocked API. cl
  warns, clang rejects it.
- curl 7.75's configure probes rely on C laxness clang rejects. The results
  flip and nonblock.c ends up in the AmigaOS IoctlSocket branch.
- OCCT installs RelWithDebInfo into bini/libi while find_package looks in lib.
  It also prepends -Wl,-s to the shared linker flags for every Clang build,
  which the MSVC-style linker gets as an argument it does not know. Both
  patched hunks sit inside if (MSVC) in the OCCT sources.
- wxWidgets lands in lib/clang_x64_lib, so wxWidgetsConfig.cmake falls back to
  the layout that exists instead of assuming vc_x64_lib. It tries the derived
  path first, so a cl-built tree consumed by clang-cl keeps resolving the way
  it does today. The patch step also resets the one file it touches, so it can
  run again after an interrupted build or after the patch itself changed.
- wxInspector goes through FindwxWidgets, which only searches lib/vc*_lib
  because _WX_TOOL is hardcoded to vc. It now gets the root and lib dir
  derived the same way wxWidgetsConfig.cmake derives them.

Eigen is the seventh, and it breaks on the generator rather than the compiler.
Its test, lapack and blas/testing subdirectories all call
enable_language(Fortran), and they default to ON because the dependency
configures as its own top-level project. Whether that hurts depends on what
CMake finds: the Visual Studio generator supports no Fortran and finds nothing,
clang-cl sits next to the LLVM toolset's flang and works, while MSVC with Ninja
finds Strawberry Perl's MinGW gfortran, which this build already requires for
OpenSSL, and hands it the MSVC-style /machine:x64 that MinGW's ld reads as a
missing input file. The configure dies there and takes every dependency still
in flight with it. Only the headers are consumed here, so the three subprojects
are off.

* fix(deps): honor the superbuild's generator and compiler in sub-builds

orcaslicer_add_cmake_project pinned every dependency sub-build to the Visual
Studio generator whenever MSVC was true, which is also true for clang-cl. That
generator selects its compiler by toolset and ignores the CMAKE_C_COMPILER and
CMAKE_CXX_COMPILER this file already forwards, so the dependencies were built
with cl.exe no matter which generator or compiler the superbuild was given.

Key the three affected decisions on the generator instead: which generator the
sub-builds use, whether CMAKE_BUILD_TYPE is forwarded, and /m versus -j. A
Visual Studio superbuild is unchanged, so the default path and CI behave
exactly as they do today.

build_release_vs.bat now accepts -l to select clang-cl, alongside the existing
-x for Ninja, so the generator and the compiler can be chosen independently. On
the Visual Studio generator -l reaches the slicer only, through the ClangCL
toolset, because the dependency sub-builds have no toolset to inherit; a deps
build in that combination says so rather than quietly using MSVC.

* fix(deps): use upstream wxWidgets compiler layout fix

The compiler-prefix layout fix now comes from SoftFever/Orca-deps-wxWidgets#7, so remove the duplicated local patch and apply step.

* fix(deps): stop Assimp enabling ccache on the RC rule

ASSIMP_BUILD_USE_CCACHE defaults on and applies the launcher through the
global RULE_LAUNCH_COMPILE property, so it wraps the resource-compiler rule
as well. Under Ninja that rule goes through cmcldeps, which does not survive
being launched by ccache, and the build fails with clang-cl reporting /fo as
a missing file.

The superbuild already forwards CMAKE_<LANG>_COMPILER_LAUNCHER, which CMake
applies per language and so keeps clear of the RC rule.

---------

Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
Co-authored-by: raistlin7447 <kris.austin@gmail.com>
2026-08-28 18:13:14 +08:00
Lam Wei Lun
a62db72e02 Publish 3MF: import-side hardening and test coverage
Validate mixed-filament definitions during the published material pass: definitions whose components reference slots that do not exist or hold other mixed filaments, or that carry fewer than two components, are reported through the shared skipped_keys channel instead of shipping a mix the GUI integrity check would only flag later.

Fix the slot-limit exhaustion report being silently dropped: it wrote to published_config->skipped_keys, which the pass's final move-assignment from the local vector clobbers. All rejections now go through the local.

Remove the unreachable persist branch from add_detached_preset: no caller passes save_to_project=false, so the parameter is gone and the copy is always project-embedded.

Tests: cover the exhaustion path, the new definition validation, the identity-tier matching matrix (including substitute reporting), the structural-key denylist, whole-vector size-mismatch skips, relocation payload degradation, the "(Published 2)" uniquify chain, mixed blend colours staying out of shared preset configs, and duplicate-slot last-wins. Also fix the legacy-3mf scenario passing vacuously behind an if-guarded assertion. All existing published/3mf tests pass unchanged.
2026-08-28 15:24:03 +08:00
Lam Wei Lun
1c09ef14a5 Update translations. Update warning messages to be more user friendly. Update gradient color chips in publish dialog 2026-08-28 12:57:00 +08:00
Lam Wei Lun
25b008ba3e Merge main 2026-08-28 10:38:36 +08:00
Lam Wei Lun
28b325805b Fixed issues with remapping mixed filaments when importing published 3MF 2026-08-28 10:37:54 +08:00
Kris Austin
6d1584844e fix: STEP part names with accented characters import as numbers (clears 6 warnings) (#15406) 2026-08-27 19:06:06 -03:00
schneider007
6fdd4945c1 Fix bug: centroid calculation (#15399) 2026-08-27 08:16:34 -03:00
Kris Austin
cbd1bf2c37 build: clear 295 more -Woverloaded-virtual warnings in GUI widgets (#15394)
build: clear 295 -Woverloaded-virtual warnings in GUI widgets

Turns three hidden base virtuals into real overrides, clearing 295 of
the 553 -Woverloaded-virtual warnings and taking a full clang-cl build
from 1,264 to 969. Part of #15374.

Search.hpp: SearchDialog::Popup and SearchObjectDialog::Popup took a
wxPoint that neither body ever read, hiding the virtual
wxPopupTransientWindow::Popup(wxWindow*). Both bodies clear the input,
call the base, set focus and refill the list, and SearchObjectDialog
also guards re-entry, so hiding meant none of that ran when the window
was popped through a base pointer. They now override and forward focus.

LabeledStaticBox::SetFont and ScrolledWindow::SetBackgroundColour hid
their base virtuals the same way, so the label metrics recompute and
the child colour propagation only ran for callers holding the concrete
type. Both now override.

Marking a member override makes clang flag every other unmarked
override in the same class, so seven sibling declarations needed the
keyword too. Left unmarked they were worth 481 warnings, which would
have made this a net loss.

MSWDismissUnfocusedPopup is declared only inside #ifdef __WXMSW__ in
wx/popupwin.h, so off Windows there is no base virtual to override and
the keyword would not compile. Both the declarations and the definitions
are guarded, which is how wxWidgets itself declares MSWWindowProc in
wx/nativewin.h and how this repo already handles it in BBLTopbar,
MainFrame, Button, ComboBox and TabCtrl.

ScrolledWindow's constructor left m_userPanel and m_scroll_win
uninitialised unless the style requested a vertical scrollbar, while
SetBackgroundColour dereferences both. No caller hits that today since
every instantiation passes wxVSCROLL, but the override widens who can
reach them, so they are now initialised alongside their siblings.

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-08-27 08:06:50 -03:00
Lam Wei Lun
23b98e2ca5 Initial commit for warning popup when required filaments are not selected for mixed filaments 2026-08-27 17:04:27 +08:00
Ian Chua
f9c415fc41 Merge branch 'main' into feat/plugin-auditing 2026-08-27 14:52:20 +08:00
Ian Chua
4c71ec4770 feat(plugin): storage API (#14923)
# Description

Exposes the filepath for the current plugin's directory via
```python
orca.host.plugin.storage
```
Tested with:

[test_storage_api_any.py](https://github.com/user-attachments/files/30333105/test_storage_api_any.py)

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-08-27 14:52:09 +08:00
Ian Chua
3ab5157a49 Merge branch 'main' into feat/plugin-storage-api 2026-08-27 14:52:00 +08:00
Lam Wei Lun
20e5a7e042 Merge main 2026-08-27 14:11:41 +08:00
Lam Wei Lun
76d9b8bac0 Publish 3MF: support mixed filaments and per-extruder slot selection
- Publish mixed-filament slots as whole units: serialize the filament_mixed_* definition into project_config on import, grow the receiver's parallel arrays in lockstep, and report unappliable definitions as skipped instead of dropping them silently

- Per-extruder printer selection: one inner tab per extruder, rows keyed by full "#N" ids; single-extruder receivers collapse variants onto their slot (first applied, rest skipped), multi-extruder receivers override element-wise

- New per-slot "Enable" toggle gating what gets published; enabling a mix auto-enables + Full Publishes its components

- Mixed page previews: fixed-size ratio bar, ternary triangle (3 components) and Material Ratio vs Model Height graph (gradients), always visible regardless of Enable

- Tab strip shows full swatch compositions with adjustable spacing; barycentric helpers shared via FilamentBitmapUtils
2026-08-27 13:17:19 +08:00
Noisyfox
213161b7cd Merge branch 'main' into dev/ffmpeg-player 2026-08-27 08:44:57 +08:00
Noisyfox
dbcb196f4e Merge branch 'main' into dev/ffmpeg-player 2026-08-26 21:47:20 +08:00
Lam Wei Lun
ce277ebbf5 Merge main + clean up code + fix missing include 2026-08-26 16:02:16 +08:00
Lam Wei Lun
feb0e479fa Published flag hardening. Better error handling path for when publish fails (unlikely) 2026-08-26 13:06:24 +08:00
Lam Wei Lun
036c4004f7 Fixes publish dialog filtering issue 2026-08-26 12:33:31 +08:00
Lam Wei Lun
cc267055e1 Use proper floating point comparison functions in publish unit test 2026-08-26 11:33:50 +08:00
Lam Wei Lun
e1a79c4112 Code cleanup and renamed published_* flags to orca_published_* flags to be less generic 2026-08-25 17:37:04 +08:00
Lam Wei Lun
51b646efcf Better safety if publish workflow crashes. Cleanup on Button 2026-08-25 16:40:18 +08:00
Lam Wei Lun
795514900d Fix Windows paint on resize issue. Automatically resize to fit tabs and button content 2026-08-25 15:18:38 +08:00
Ian Chua
1e392e4437 fix: remove audit scope from plugin pages 2026-08-25 14:38:51 +08:00
Lam Wei Lun
d4cb739b8b Dead code removal and comment cleanup 2026-08-25 14:17:56 +08:00
Ian Chua
390e47a8c6 Merge branch 'main' into feat/plugin-storage-api 2026-08-25 13:49:04 +08:00
Ian Chua
4c4eb9a94e Merge branch 'main' into feat/plugin-auditing 2026-08-25 13:46:18 +08:00
Lam Wei Lun
0ba7bae794 Fix conflicts. Update unit tests 2026-08-25 13:18:00 +08:00
Lam Wei Lun
c2357fdac6 Merge main 2026-08-25 12:34:48 +08:00
Lam Wei Lun
52aa5a52e9 Published 3MF: import Full Publish materials as standalone detached presets inside the project 2026-08-25 12:27:45 +08:00
Lam Wei Lun
3ed1f64f2e Merge main 2026-08-24 14:19:49 +08:00
Lam Wei Lun
2aff31c07a Published 3MF: match filament slots by exported identity without a Type requirement 2026-08-24 13:19:57 +08:00
raistlin7447
575a874832 fix: keep CRLF when patching CPython on Windows
git apply inherits the caller's configuration, so under core.autocrlf=input it
rewrites the patched PCbuild/find_python.bat to LF. cmd.exe cannot resolve goto
labels in an LF batch file, so CPython's build fails with "The system cannot
find the batch label specified - begin_search" and then "Cannot locate
python.exe on PATH or as PYTHON variable".

git init already runs in the extracted source, so setting core.autocrlf on the
repository it creates is enough, without touching the shared PATCH_CMD.
2026-08-23 20:21:00 -05:00
Lam Wei Lun
28b1f3ab03 Merge main 2026-08-21 19:05:15 +08:00
Lam Wei Lun
36e5d4770b Code cleanup and fixes 2026-08-21 19:04:10 +08:00
Lam Wei Lun
95e392e206 Code cleanup 2026-08-21 18:36:30 +08:00
SoftFever
f23e5875d5 filament_id v4.2b: re-mint the Qidi QD_* island (plan v4 SS4)
All 264 QD_* declarations re-derive from their family triples via
--remint Qidi. Only 8 family ids are new: most QIDI-brand products already
carried v3.2-minted ids on older printer series, so the QD-series
declarations converge onto them (QD_0..4_1_1 -> OFKIQO2W "QIDI PLA
Rapido"), and the six Generic families converge onto the shared generic
ids (Generic PLA -> OFDSrzZ8 etc.) by triple math -- no inherits or
compatible_printers changes anywhere.

--update-snapshot retires all 204 QD_* ids with mode-rule successors.
Audit: 204/204 non-null successors, every chain ends at a live id; the
four ids hardcoded in QidiPrinterAgent's non-numeric-series fallback
resolve to the OFL generics (QD_1_0_1 -> OFDSrzZ8, ...). The v4.1 agent
hook translates device-composed QD_* ids through these entries at
runtime, so box behavior is preserved on updated clients.

Known accepted residue (plan v4 SS4): three case/spelling family splits
keep distinct ids for one product line each -- QIDI PC-ABS-FR (series
1-2) vs QIDI PC/ABS-FR (series 3-4) vs Qidi PC-ABS-FR (X-Plus 4), and
QIDI TPU 95A-HF vs Qidi TPU 95A-HF. Renames are ruled out; the ledger's
per-series successors keep each device slot resolving to the right
presets, and a future upstream name unification self-heals through
content addressing.

The code<->ledger lockstep test is now active (un-skipped).

Gates: --check 0; orca_extra_profile_check 0/0; 117 script tests OK
(0 skipped); validator base, -f tree-wide, -v Qidi all exit 0;
libslic3r_tests green; Qidi profile diff is filament_id-value-only.
Qidi.json version bumped.
2026-08-21 18:36:28 +08:00
SoftFever
8d83414d09 filament_id v4.2a: dissolve the QD_* island in the tooling (plan v4 SS3)
- is_island_declaration: only BBL remains an island; Qidi QD_* declarations
  now enter the triple bookkeeping (checks 3 and 8, --remint's domain).
- reserved_space_owner: QD_* stays reserved but ownerless -- no vendor may
  declare it, --update-snapshot refuses new QD_* ids outright, and vanished
  QD_* ids take the retired-with-successor path instead of the island
  release-with-hint path. New reserved_space_desc() names the space in
  check 6 / sanction-gate messages.
- Check 1 drops the vendor-Qidi QD_* format exemption; --add-hint now
  refuses QD_* keys (island space is GF* only); docstrings updated.
- Snapshot regenerated: the 204 QD_* declarer triples are now recorded
  (declared triples 1113 -> 1317); ids/claims unchanged.
- Tests updated for the flip; new (skipped until v4.2b) lockstep test
  asserting the QidiPrinterAgent fallback QD_* literals stay retired
  ledger keys chaining to live ids.

Tree state is untouched: presets still declare their QD_* ids, all
grandfathered by the snapshot. --check exit 0; 117 script tests OK.
2026-08-21 18:34:20 +08:00
SoftFever
1c405f8a2c filament_id v4.1: resolve retired QD_* ids in the Qidi box miss path
QidiPrinterAgent composes QD_<series>_<vendor>_<typeidx> setting ids from
device enums and previously degraded any slot whose id matched no visible
preset to generic-by-type. Plan v4.2 retires every QD_* preset id to the
succession ledger, so insert the ledger walk between the direct match and
the generic fallback: a composed QD_* id now forwards to its family's
minted OF* successor exactly like every other retired id.

Behavior-neutral until the ids are actually retired (the ledger holds no
QD_* keys yet, and live QD_* presets still match directly).

Also documents the code<->ledger lockstep on the hardcoded non-numeric-
series fallback table (QD_1_0_1/_11/_41/_50) and adds a C++ test pinning
that the succession walk is key-format agnostic.

Gates: libslic3r_tests [filament_id] 14 assertions green; libslic3r_gui
compiles.
2026-08-21 18:34:20 +08:00
SoftFever
58d1a3b093 filament_id v4.0: re-converge post-merge drift (Qidi/Snapmaker/re3D)
The 2026-08 main merge brought upstream vendor updates in pre-v3 style;
assign_filament_ids.py --check reported 243 errors. Re-converged per plan
v4 SS1(A)/SS4:

- Qidi X5: 12 brand presets had copied BBL catalog ids (GFB99/GFG99/GFL99);
  re-minted to their product triples (PolyLite PLA converges onto OF5CgdDq).
- Snapmaker U1: fixed empty/lowercase/wrong filament_vendor on 5 bases
  (triple inputs, W3-style); re-minted 24 declarations, resurrecting no
  retired ids (11813638720/141703112701/1417031127011/OGFL99 all re-minted
  away; base2 duplicates converge onto their families' v3.2 ids).
- re3D: rPETG had copied GFG01 (BBL space); re-minted to OFmCOW2Y. The
  GreenGate3D bundle was removed upstream with its product relocated here;
  retired OFSTCno1 -> OFmCOW2Y so shipped references keep resolving.
- validator -f: resolved 34 AMS-match ambiguities using the v3 mechanisms:
  salt-1 ids on the 5 re3D root presets and Snapmaker PLA-CF @U1 0.4
  (duplicate presets of one product; deletion forbidden), own minted ids
  for the 4 cross-family riders (Polymaker General/Silk/Tough PLA Family,
  Snapmaker PLA Full Spectrum).
- Snapshot re-sanctioned (+92 ids incl. 44 new QD_4_* island ids and BBL
  addnorth GF_AN*); ledger +1 entry (OFSTCno1).

Gates: --check 0; orca_extra_profile_check 0/0; 116 script tests OK;
validator base + -f exit 0. Vendor versions bumped (Qidi, Snapmaker, re3D).
2026-08-21 18:13:18 +08:00
SoftFever
71563cc6c6 Add filament_id plan v4: dissolve the Qidi QD_* island 2026-08-21 18:13:18 +08:00
SoftFever
f3fa3a34bd Merge branch 'main' into feature/filament_id 2026-08-21 17:30:12 +08:00
Lam Wei Lun
a5033afaf8 UI cleanup and translations updated 2026-08-21 14:26:20 +08:00
Lam Wei Lun
a0e95abebe Fix unit test: 2026-08-21 13:26:17 +08:00
Lam Wei Lun
aa3ce35683 Published 3MF: silent geometry-only fallback in old versions via tag/config-less export 2026-08-21 13:00:32 +08:00
Lam Wei Lun
19a0407560 Merge main 2026-08-21 12:28:24 +08:00
Lam Wei Lun
4c8e851b46 Direct name matching for filament import flow fixed. Merge main and conflicts resolved 2026-08-20 14:44:40 +08:00
Lam Wei Lun
aeaa3c5d66 Bug fix for perfect name matching 2026-08-19 16:57:45 +08:00
Lam Wei Lun
2e0ef11b0f Merge from main and fix merge conflicts 2026-08-19 16:16:21 +08:00
Lam Wei Lun
1b770e8638 Bug fixes and test cases for import filament of published 3MF. Update translations 2026-08-19 15:47:28 +08:00
Ian Chua
83a00843a0 fix: revoke plugin permissions on install/update 2026-08-19 14:13:56 +08:00
Lam Wei Lun
36a8811cc0 Change label to "Publish 3MF..." 2026-08-18 16:29:27 +08:00
Lam Wei Lun
b82d4f3af8 Fix issues with filament import when receiver has fewer filament slots than the author's 3MF format 2026-08-18 15:11:00 +08:00
Lam Wei Lun
6aab2b22a1 Merge 2026-08-18 13:50:07 +08:00
Lam Wei Lun
6c429059e0 Extend Publish workflow with full-filament and type/color requirements
Per material slot, the Publish dialog can now embed the entire filament preset ("Full Publish") and require a curated filament type and/or colour:

- On export, full-publish vector options are masked to the author's slot so unrelated slot data never leaks into the published file.

- On load, slots are matched by the published type: a match keeps the receiver's material (full dumps ignored, partial keys applied); a mismatch replaces the slot with the first visible same-type library filament, falling back to a temporary embedded preset or skipped keys when none exists. Required colours apply regardless of the type match.

- The receiver's slot count grows only to the highest published slot.

- Published 3MFs load as a new project: the file's path is not adopted as the project filename, published metadata is stripped from the model, and the file is added to recent projects.

- Notifications list replaced slots, and the edited filament preset is refreshed so applied values surface in the GUI.

- Dialog: "Full Publish" toggle replaces the material opt-in and select-all headers; new Color/Type requirement rows with swatches.

- Add Ctrl+Shift+E shortcut for the Publish dialog (menu, key handling, and the keyboard shortcuts dialog).

- Tests for export slot masking, metadata round-trip, replacement semantics, slot growth, and skipped-key reporting.
2026-08-18 13:49:10 +08:00
Lam Wei Lun
2b18744cc2 Allow model to be Published without any settings modified 2026-08-17 17:50:54 +08:00
Lam Wei Lun
eaaffd2706 Merge from main 2026-08-17 13:03:29 +08:00
Noisyfox
86a63e7e2f deps: disable FFmpeg VideoToolbox/AudioToolbox HW-accel on macOS
The static libavcodec.a/avutil.a compiled the auto-detected
videotoolbox/audiotoolbox objects, which reference VideoToolbox
framework symbols (_VTDecompressionSession*). The app link line
happened to satisfy them transitively, but the orca_stubgen module
link (CI-only) failed with undefined symbols. The player decodes in
software (swscale), so disable both HW-accel paths to keep the
static libs self-contained.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-15 08:52:52 +08:00
Noisyfox
9c7e6711c6 build: move FFmpeg media player sources to the common GUI list
wxMediaCtrl3 and AVVideoDecoder are platform-neutral C++ compiled on
all three platforms, so list them once in the common SLIC3R_GUI_SOURCES
instead of duplicating them in the APPLE and non-APPLE branches. The
else() branch is now empty and drops out entirely.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 23:06:16 +08:00
Noisyfox
adcbdddc12 refactor: remove dead GStreamer bambusrc plugin and its build dep
gstbambusrc was the GStreamer source element for the old wxMediaCtrl2
Wayland player, its only consumer (deleted in the previous commit).
The new FFmpeg player handles bambu:/// URIs through the Bambu C API
instead. Drop the plugin and the gstreamer-1.0 / gstreamer-base-1.0
REQUIRED pkg-config dependencies that existed solely for it.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 22:48:33 +08:00
Noisyfox
7e3724b5f3 refactor: remove dead wxMediaCtrl2 player
wxMediaCtrl2 was never instantiated on any platform (USE_WX_MEDIA_CTRL_2
is 0 everywhere); wxMediaCtrl3 replaced it. Delete wxMediaCtrl2.cpp/h,
drop them from the Win/Linux source list and the gettext list.txt, and
collapse the preprocessor-dead #if USE_WX_MEDIA_CTRL_2 gate in
MediaPlayCtrl.h.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 22:30:14 +08:00
Noisyfox
dd910dcb85 build: drop redundant --enable-shared in FFmpeg deps configure
The literal --enable-shared was always overridden by ${_link_cmd}
(--enable-static --disable-shared on Apple, --enable-shared elsewhere)
and FFmpeg configure processes these flags in order, last one wins.
Remove it and the stale comment documenting the workaround.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 22:10:29 +08:00
Noisyfox
bf40951a4f fix: add static FFmpeg NOTFOUND guard; drop dead wxMediaCtrl2.h include 2026-08-14 21:52:31 +08:00
Noisyfox
97955dbab8 refactor: remove old BambuPlayer-based media player from macOS
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 21:15:20 +08:00
Noisyfox
4531dc2af1 build: build static-only FFmpeg for macOS deps
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 21:10:26 +08:00
Noisyfox
2c8f56dd84 feat: use FFmpeg media player on macOS with static FFmpeg 2026-08-14 21:01:43 +08:00
Noisyfox
ec31750330 Add implementation plan for macOS FFmpeg player
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 20:11:09 +08:00
Noisyfox
111364d880 Add design doc for macOS FFmpeg player
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 20:08:55 +08:00
Lam Wei Lun
92123cdc2c Add filament color next to tab button in filament setting 2026-08-14 16:50:33 +08:00
Lam Wei Lun
76ec2f10c6 Switch to a Tab layout for the Publish dialog 2026-08-14 16:19:46 +08:00
Ian Chua
58b17f08e0 Merge branch 'main' into feat/plugin-storage-api 2026-08-14 15:19:26 +08:00
Ian Chua
991c36d649 Merge branch 'feat/plugin-auditing' of https://github.com/OrcaSlicer/OrcaSlicer into feat/plugin-auditing 2026-08-14 14:49:54 +08:00
Ian Chua
f6f68573b6 fix: add resources folder to the allowed roots as readonly 2026-08-14 14:48:57 +08:00
Lam Wei Lun
99db5cca38 Renamed to Publish instead of Publish Settings 2026-08-14 14:00:20 +08:00
Lam Wei Lun
d124e1ccbc Update unit test 2026-08-14 13:41:38 +08:00
Noisyfox
73131735a2 Fix Linux unit tests loading deps-built FFmpeg libraries
The test executables that link libslic3r_gui (which links PkgConfig::LIBAV)
have a load-time dependency on the deps-built FFmpeg shared libraries. The CI
unit-test runner only receives the tests artifact, so those libraries were
unresolvable there (Ubuntu 24.04 ships libavcodec.so.60, not .61). Copy the
libraries next to each affected test executable and give it an $ORIGIN rpath,
mirroring the Windows branch that copies DLLs next to every test executable.
orcaslicer_copy_sos now places the copies in the per-config output directory
for multi-config generators, like orcaslicer_copy_dlls does.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-14 13:25:29 +08:00
Lam Wei Lun
96f5a23387 Only serialize selected published settings. Minor cleanup 2026-08-14 12:53:44 +08:00
Ian Chua
28d0d218ff Merge branch 'main' into feat/plugin-auditing 2026-08-14 12:33:35 +08:00
Ian Chua
d99f4c8164 Merge branch 'main' into feat/plugin-auditing 2026-08-14 12:33:08 +08:00
Noisyfox
e9ca9d41d1 Attempt to fix Linux unit test 2026-08-14 10:58:43 +08:00
Lam Wei Lun
b488067f82 Merge from main 2026-08-14 10:50:24 +08:00
Lam Wei Lun
b280ab555c Initial Commit for Publish Settings workflow 2026-08-14 10:49:49 +08:00
Noisyfox
41c107d4f7 Fix Linux AppImage bundling of deps-built shared libraries
The AppImage dependency closure resolves each bundled ELF's DT_NEEDED
entries with plain ldd, which cannot resolve the deps-built FFmpeg stack
(libavcodec/libavutil/libswscale) once it is copied into the bundle:
those libs are not installed in any standard loader path and carry no
RUNPATH of their own, so ldd reports the siblings as missing and the
build aborts. Extend the loader path with the bundle directory plus the
source directories of already-bundled files (mirroring
scripts/check_appimage_libs.sh), and key the dedup set on the bundled
file path instead of the source path so dependencies resolved from the
bundle directory are not copied onto themselves.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-13 22:22:02 +08:00
Noisyfox
86d4429197 Try fix appimage build 2026-08-13 21:33:57 +08:00
Ian Chua
ddd62e25df add audit hook for fs, network and processes 2026-08-13 19:16:18 +08:00
Noisyfox
43ec8805b1 Fix Linux build 2026-08-13 18:57:39 +08:00
Noisyfox
482da7288f Add ffmpeg to flatpak 2026-08-13 17:29:01 +08:00
Noisyfox
547bcc7b03 Install required tools for macOS 2026-08-13 17:05:44 +08:00
Noisyfox
5b7a58c8bb Install required tools for Linux 2026-08-13 16:59:46 +08:00
Noisyfox
2d9a3be88f FIX: GTK video window resize ran in a free function without member access
wxMediaCtrl_OnSize referenced wxMediaCtrl2's private m_gtk_video_window,
which does not compile on Linux/GTK. Move the resizing into
wxMediaCtrl2::DoSetSize where the member is in scope.
2026-08-13 16:34:42 +08:00
Noisyfox
936900d4d8 Attempt to fix Windows CI build 2026-08-13 16:23:19 +08:00
Noisyfox
e2eebc69dd Update idle image 2026-08-13 09:12:24 +08:00
Noisyfox
dc4562cbfc Fix build 2026-08-13 09:12:23 +08:00
lane.wei
7382a15b89 ENH: update some missing codes
jira: no-jira
Change-Id: Icb2da53911430ac144b0fb601637a7ad31e7e8db
(cherry picked from commit 13b4213f8a24c76c16e49daf905fa29c0f646a5a)
2026-08-13 09:12:23 +08:00
chao.zhang
0325f94de1 Fix: fix memory leak caused by ffmpeg decoding
Change-Id: I162ad4ea8d4601c1ffe17a65f292566c9dea6f0b
jira: no-jira
(cherry picked from commit eb20d03186c86b7398b97e3bae0a3c7a7b81c58c)
2026-08-13 09:12:23 +08:00
chunmao.guo
ce53d34b4d ENH: wxMediaCtrl3 display video frame at pts
Change-Id: I8847236d2307101e5f2befc6477cd20b3691841c
Jira: none
(cherry picked from commit 05328da4612c11d50f6fd90e872b97f5f8f46b1d)
2026-08-13 09:12:23 +08:00
chunmao.guo
26383d5c22 FIX: TabCtrl button margin
Change-Id: If8b05a4ef9efb8b57989ee1de6543631e5a3cf90
Jira: STUDIO-8265
(cherry picked from commit 1c5e65707109ad0582b6442cf8e515344f799c27)
2026-08-13 09:12:23 +08:00
chunmao.guo
76e3da15e3 FIX: wxMediaCtrl3 zero size crash
Change-Id: I16a3f7b3afe142bb957a1740b8e8c9820c92b349
Jira: STUDIO-8522
(cherry picked from commit 8cdaea1162ccbcc0bd03ecd99346f3b9cf52cf64)
2026-08-13 09:12:23 +08:00
Bastien Nocera
a9be080ebc slic3r: Fix missing BOOST_LOG_TRIVIAL declaration
src/slic3r/GUI/wxMediaCtrl3.cpp:181:23: error: ‘info’ was not declared in this scope
  181 |     BOOST_LOG_TRIVIAL(info) << msg.ToUTF8().data();
      |                       ^~~~
src/slic3r/GUI/wxMediaCtrl3.cpp:181:5: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  181 |     BOOST_LOG_TRIVIAL(info) << msg.ToUTF8().data();
      |     ^~~~~~~~~~~~~~~~~

(cherry picked from commit c5c41e20ca2fc7f3b53a4c769961f73df6992008)
2026-08-13 09:12:23 +08:00
Bastien Nocera
7b5f8d00a0 slic3r: Fix missing wxPaintDC declaration
src/slic3r/GUI/wxMediaCtrl3.cpp: In member function ‘void wxMediaCtrl3::paintEvent(wxPaintEvent&)’:
src/slic3r/GUI/wxMediaCtrl3.cpp:121:5: error: ‘wxPaintDC’ was not declared in this scope; did you mean ‘wxPoint’?
  121 |     wxPaintDC dc(this);
      |     ^~~~~~~~~
      |     wxPoint

(cherry picked from commit 9ab5009235d212699f91e01d7f930f92849ed1e3)
2026-08-13 09:12:23 +08:00
Bastien Nocera
76546d89f1 slic3r: Fix missing includes in wxMediaCtrl2
src/slic3r/GUI/wxMediaCtrl2.cpp: In lambda function:
src/slic3r/GUI/wxMediaCtrl2.cpp:170:13: error: ‘wxMessageBox’ was not declared in this scope; did you mean ‘wxInfoMessageBox’?
  170 |             wxMessageBox(_L("Your system is missing H.264 codecs for GStreamer, which are required to play video.  (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Bambu Studio?)"), _L("Error"), wxOK);
      |             ^~~~~~~~~~~~
      |             wxInfoMessageBox
src/slic3r/GUI/wxMediaCtrl2.cpp: In member function ‘void wxMediaCtrl2::Load(wxURI)’:
src/slic3r/GUI/wxMediaCtrl2.cpp:179:5: error: ‘wxLog’ has not been declared
  179 |     wxLog::EnableLogging(false);
      |     ^~~~~

(cherry picked from commit 73908d38d8b1f7c8dcae92d55711bc08cbfff23c)
2026-08-13 09:12:23 +08:00
Bastien Nocera
004aea23c8 slic3r: Fix missing includes in AVVideoDecoder
In file included from src/slic3r/GUI/AVVideoDecoder.cpp:1:
src/slic3r/GUI/AVVideoDecoder.hpp:28:20: error: ‘wxImage’ has not been declared
   28 |     bool toWxImage(wxImage &image, wxSize const &size);
      |                    ^~~~~~~
src/slic3r/GUI/AVVideoDecoder.hpp:28:36: error: ‘wxSize’ has not been declared
   28 |     bool toWxImage(wxImage &image, wxSize const &size);
      |                                    ^~~~~~
src/slic3r/GUI/AVVideoDecoder.hpp:38:10: error: ‘vector’ in namespace ‘std’ does not name a template type
   38 |     std::vector<uint8_t> bits_;
      |          ^~~~~~
src/slic3r/GUI/AVVideoDecoder.hpp:9:1: note: ‘std::vector’ is defined in header ‘<vector>’; did you forget to ‘#include <vector>’?
    8 |     #include <libswscale/swscale.h>
  +++ |+#include <vector>
    9 | }

src/slic3r/GUI/AVVideoDecoder.cpp:145:89: error: invalid use of incomplete type ‘class wxBitmap’
  145 |     bitmap = wxBitmap((char const *) bits_.data(), size.GetWidth(), size.GetHeight(), 32);
      |                                                                                         ^

(cherry picked from commit 781ce14e061366da64fdc2d0d592fa35ee57e67e)
2026-08-13 09:12:22 +08:00
Bastien Nocera
3045ff7788 slic3r: Fix missing declarations in wxMediaCtrl3.h
src/slic3r/GUI/wxMediaCtrl3.h:80:10: error: ‘condition_variable’ in namespace ‘std’ does not name a type
   80 |     std::condition_variable m_cond;
      |          ^~~~~~~~~~~~~~~~~~
src/slic3r/GUI/wxMediaCtrl3.h:27:1: note: ‘std::condition_variable’ is defined in header ‘<condition_variable>’; did you forget to ‘#include <condition_variable>’?
   26 | #include "Printer/BambuTunnel.h"
  +++ |+#include <condition_variable>
   27 |
src/slic3r/GUI/wxMediaCtrl3.h:81:10: error: ‘thread’ in namespace ‘std’ does not name a type
   81 |     std::thread m_thread;
      |          ^~~~~~
src/slic3r/GUI/wxMediaCtrl3.h:27:1: note: ‘std::thread’ is defined in header ‘<thread>’; did you forget to ‘#include <thread>’?
   26 | #include "Printer/BambuTunnel.h"
  +++ |+#include <thread>
   27 |

In file included from src/slic3r/GUI/MediaPlayCtrl.h:17,
                 from src/slic3r/GUI/MediaPlayCtrl.cpp:1:
src/slic3r/GUI/wxMediaCtrl3.h:77:13: error: field ‘m_frame’ has incomplete type ‘wxImage’
   77 |     wxImage m_frame;
      |             ^~~~~~~

(cherry picked from commit 727a73333bd67acf5ff2b1c51ff284c2bacdb413)
2026-08-13 09:12:22 +08:00
chunmao.guo
fed03193e2 FIX: reset decode buffer zero when scale width changed
Change-Id: Iaa2f99111dd5f7228b7b25e1be0a8cbdbfe982a6
Jira: STUDIO-8422
(cherry picked from commit 659ebc7d07a8f6045ba5443141b44277d7257cec)
2026-08-13 09:12:22 +08:00
chunmao.guo
c3d9c27091 FIX: wxMediaCtrl3 enter Stopped state soon
Change-Id: I120e9d4b9f85599a184650d1d95fe2bec42af171
Jira: STUDIO-8280
(cherry picked from commit 7648d96305d510b9e97f22124961de5115cde830)
2026-08-13 09:12:22 +08:00
chunmao.guo
240227de79 FIX: decode video to wxImage on Linux
Change-Id: I5e332a1b0622b3dfc70ac5c4c3bfa62b3411ebdc
Jira: none
(cherry picked from commit c787ba921a31f259e8eb23fd59f178e96279caf9)
2026-08-13 09:12:22 +08:00
Mack
be2be5c831 FIX: ffmpeg cmake install error
jira:nojira

Change-Id: I74cc0f7c86b5364e55cad2af2bd9a82306ee6864
(cherry picked from commit 805df79e3bb044dac29ec1c06736751ccf3675f9)
2026-08-13 09:12:22 +08:00
MackBambu
2ae0a52928 NEW:add ffmepg build Cmake
buildLinuxImage add ffmpeg so file

jira:nojira

Change-Id: I3e1be53aa58a179b8d9ae048ed7538de3ae8d111
(cherry picked from commit 2d70a1bcb6a5ba601525b08a38e7610f018fe106)
2026-08-13 09:12:22 +08:00
BBL\chuan.he
d325b6b85c fix:cannot open shared object file on linux
Change-Id: Ica66500506cfe8932eac3ae0a58fb7ff30d1da9b
jira:none
(cherry picked from commit febd1aeb4d453bc96571fa5e5727e9e10046cb80)
(cherry picked from commit 5ad579f929154779abd84b01438fd235c647dbf5)
2026-08-13 09:12:22 +08:00
chunmao.guo
b612cfa38b FIX: AVVideoDecoder sws_ctx_ == nullptr on zero size
Change-Id: I9698354bb1f341e276ec9780d4ef4fcd9f8a1028
Jira: STUDIO-7706
(cherry picked from commit ff622e25026a8471c39eb308cf5b115c4a9d84aa)
2026-08-13 09:12:22 +08:00
chunmao.guo
0f06620d40 FIX: wxMediaCtrl3 idle image & center pos
Change-Id: Ib9652573e31bfd6229f174c0a1388942d9d98822
Jira: STUDIO-7633
(cherry picked from commit d51247c46e26460b151de79c598d81151280e79c)
2026-08-13 09:12:21 +08:00
chunmao.guo
fbc5dbcfd4 FIX: ffmpeg swscale & frame_size
Change-Id: I9f4cb8c739b726f7e5cdbe0df7ed06b2eb2154d5
Jira: STUDIO-7624
(cherry picked from commit 5a2c75d835fb437667b590a803eef148baa30875)
2026-08-13 09:12:21 +08:00
chunmao.guo
297572dc03 FIX: install ffmpeg symbolic sos
Change-Id: Ia4a45182cefcf62a7a4b4a5c89c92251609c5a68
Jira: none
(cherry picked from commit b7f8fa1efdbe0ac2cc896ca24f063f5894fe9f90)
2026-08-13 09:12:21 +08:00
chunmao.guo
8832d54b53 FIX: ffmpeg decoder memory leak
Change-Id: I997572b5730618a969959f9b24c405d80fa9f83c
Jira: STUDIO-7597
(cherry picked from commit 342cea29bd9593fa89cbb33caff58055b46ebeec)
2026-08-13 09:12:21 +08:00
chunmao.guo
7c09b0bcba FIX: reset bambu lib after restart network plugin
Change-Id: I4a3a4b7420745835ca3fa00c6edebe9d8d98cbf6
Jira: STUDIO-7571
(cherry picked from commit 28d9c6743fae80bfd40e4ee391e30d62cb16d4ab)
2026-08-13 09:12:21 +08:00
chunmao.guo
56ac17f085 NEW: reimpl wxMediaCtrl from ffmpeg
Jira: none
Change-Id: I46a47118a7649b2a50fcce8911e2888342ef25de
(cherry picked from commit d6c7f08769c8cfdbbf0e80ad280c9b3408a3c27d)
(cherry picked from commit 94d91be60bfe9bbbcdd21f85b46abc3faf126f17)
2026-08-13 09:12:21 +08:00
Noisyfox
4196c23d44 Add ffmepg dep 2026-08-13 09:12:13 +08:00
SoftFever
1a62a25d36 Merge branch 'main' into feature/filament_id
Brings in 560 commits (merge base 2026-07-04 .. origin/main af9fd10d7a).
19 conflicts resolved; the other 138 touched files auto-merged.

Conflict resolutions
- Snapmaker/Polymaker (7): main normalised JSON key order in #15039 while this
  branch inserted filament_id/filament_vendor. Took main's key order and kept
  this branch's values, inserting a single filament_id key rather than letting
  git's line merge leave duplicate "from"/"instantiation" keys.
- re3D rPETG @0.8/@1.75 nozzle (2): main renamed these from "re3D Greengate
  rPETG @*" and re-vendored GreenGate3D -> re3D (#15169). Git's rename-aware
  merge produced a file with two filament_vendor keys; took main's version
  wholesale instead. The id is reconciled by the tooling, not by hand.
- re3D rPP (1): kept main's inherits change (fdm_filament_pet -> fdm_filament_pp,
  local filament_type override dropped) and its widened compatible_printers.
  The flattened type is still PP, so the product triple and id OFfHGM1D are
  unchanged.
- re3D Greengate rPETG.json, Afinia {ABS+,ABS,PLA,TPU,Value ABS,Value PLA}.json
  (7 modify/delete): accepted main's deletions. The Afinia ids are not orphaned
  - the surviving @HS presets resolve the same triple and already carry the
  same ids, so nothing is retired.
- .github/workflows/check_profiles.yml: kept both main's new "validate slice"
  step and this branch's tree-wide filament-subtype check.
- tests/libslic3r/CMakeLists.txt: kept both test_filament_id_succession.cpp and
  main's test_preset_diff.cpp.

Verified
- No conflict markers; all 12795 profile JSONs parse with no duplicate keys.
- All branch artifacts (tooling, snapshot, ledger, doc, tests) intact and
  unmodified by the merge.
- The succession-ledger C++ call sites survived main's refactors; audited
  Preset.{cpp,hpp}, PresetBundle.cpp, DeviceManager.cpp, PresetComboBoxes.cpp,
  CaliHistoryDialog.cpp, MoonrakerPrinterAgent.cpp against base/ours/theirs.
- scripts/tests: 115/116 pass.

Known follow-up: assign_filament_ids.py --check reports 243 errors, all from
filament data main added in the last month (BBL/addnorth, Qidi X5/Plus 5,
Snapmaker U1, re3D). The single failing unit test is the live-tree conformance
test asserting that count is zero. Reconciliation lands separately.
2026-08-08 02:05:37 +08:00
Ian Chua
274150af27 Merge branch 'main' into feat/plugin-storage-api 2026-08-05 20:11:29 +08:00
Ian Chua
35970f61dc fix: lift audit while reporting errors to log files 2026-07-29 16:52:16 +08:00
Ian Chua
2169b72c94 fix: update tests 2026-07-28 19:28:58 +08:00
Ian Chua
0cb56b3cfa Merge branch 'main' into feat/plugin-auditing 2026-07-28 18:48:58 +08:00
Ian Chua
81b06d68f1 feat: initial plugin auditing workflow 2026-07-28 17:11:54 +08:00
Ian Chua
2e246341d1 move the storage directory outside the actual plugin code folder 2026-07-24 18:57:46 +08:00
Ian Chua
9513300835 Merge branch 'main' into feat/plugin-storage-api 2026-07-24 13:09:39 +08:00
Ian Chua
f7caf0db07 feat(plugin): storage API 2026-07-23 21:04:08 +08:00
SoftFever
f7c1b290fd v3.2: vendor-bundle re-mint under the product-triple rule
Every remaining legacy filament_id outside the BBL/QD_* islands re-derives
from its product triple (filament_vendor / filament_type / family name),
completing the content-addressed id model of filament_id_plan_v3.md:

- Relocation pre-step: 14 fdm_filament_* template forks (Cubicon x3,
  Prusa x6, RH3D x6 minus the pc fork already re-homed) stop declaring
  ids; the 16 presets that rode Prusa's forks now declare the id they
  already resolved (verified zero effective-id drift over all 5892
  instantiated presets).
- --drop-redundant-ids: 6 Custom/MyToolChanger generics drop copied GF
  ids and ride their OFL families.
- --remint over all 62 non-island vendors: 2647 declarations re-derived;
  identical products converge cross-bundle (showcase: PolyLite PLA is now
  OF5CgdDq in OrcaFilamentLibrary, Qidi, OrcaArena and Snapmaker).
- Prusament @XL completions surfaced by the relocation: filament_vendor
  ["Prusa Polymers"] on the 8 @XL declarers; Prusament PA-CF typed
  PA11-CF (the product is Prusament PA11CF) and PC-CF typed PC-CF
  (-CF family typed as base polymer); each family converges on one id.
- Succession: 331 ids retired with mode-rule successors, 355 never-shipped
  v1 mints forgotten with chain splicing, 151 GF-shaped ids released to
  the island space with hints, 27 curated BBL-generic -> OFL-generic
  hints (GFL99 -> OFDSrzZ8 class). New --retire "OLD=NEW" maintenance
  mode records lineage for OGFC99/OGFG99/OGFN99 (the shipped ids of OFL's
  Generic PC/PETG/PA in released versions, whose claims migrated in v3.1
  while Cubicon's inert fork declarations kept them alive).
- Retiring the P-hex system ids removes the last system ids from
  check_ams_filament_valid's destructive P-gate.
- AMS-ambiguity fixes surfaced by convergence (validator -f): 4 presets
  riding another family's id through inherits now declare their true
  family id (Elegoo Generic ASA-CF/PETG-CF, Snapmaker PolyLite Dual PLA /
  PolyLite J1 PLA); 9 Cubicon @base presets and Dremel Generic PLA, which
  duplicate their per-printer variants on the same printers, split onto
  the salt-1 iteration of their triple (sanctioned by the mint-conformance
  check; --remint now leaves salt-conformant declarations alone).

Gates: assign_filament_ids --check 0; orca_extra_profile_check 0;
116 python unit tests; config-equivalence over all 5892 instantiated
presets (byte-identical configs except the 14 sanctioned Prusament
vendor/type corrections; setting_id and compatible_printers unchanged;
per-family convergence and ledger conservation verified); profile
validator base/-f/-r(BBL)/-r(Qidi) all green; libslic3r_tests 48610
assertions; Moonraker OFL generic map check; custom-preset fixture
archives v1.9.0-v2.4.1.
2026-07-04 21:09:29 +08:00
SoftFever
e3ac835cc3 v3.2 data fixes: per-vendor (filament_vendor, filament_type) reconciliation
Reconcile every same-family triple divergence ahead of the v3.2 re-mint,
per the pinned decision rule (spool brand; "Generic"-named -> Generic;
brand-named -> that brand in every bundle; first-party lines -> printer
brand; web evidence beats names). All 32 grandfathered triple_exceptions
resolved plus swept same-class finds; every bundle re-verified split-free
by loader-faithful re-resolution and adversarially reviewed.

- Flashforge: 10 exceptions + swept Flashforge PLA; FusRock S-Multi/S-PAHT
  illegal types decided with product evidence (PA / PAHT); FusRock Generic
  roots -> Generic; 57 explicit Generic pins keep 14 uninvolved 0.25-nozzle
  families triple-identical.
- Prusa: Prusament vendor -> "Prusa Polymers"; Generic ASA -> Generic;
  Generic TPU/TPU HF type FLEX -> TPU; fdm_filament_pc re-home (sanctioned):
  Prusa Generic PC family = OF97ru74, Prusament PC Blend = OFvDbkFq on the
  @XL pair; transitional ids deleted from OFL and Prusa fdm_filament_pc.
- Anycubic: 8 first-party families -> Anycubic on fdm_filament_common
  leakers; Generic PETG outlier -> Generic.
- Creality: 5 Ender-5Max/K2 generics + swept Creality Generic PA -> Generic.
- Snapmaker: PolyLite PLA -> Polymaker; PLA Lite child aligned to root per
  Snapmaker/Orca_Presets evidence.
- Sovol/re3D: Polymaker PETG / SUNLU PETG -> brand; Greengate rPETG ->
  GreenGate3D per manufacturer evidence.

Snapshot/ledger intentionally untouched here: the central mechanical
commit regenerates them; --check is expected red between the two.
2026-07-04 20:20:03 +08:00
SoftFever
23386f6129 Merge branch 'main' into feature/filament_id 2026-07-04 19:41:38 +08:00
SoftFever
3ccc58a9fc fix 2026-07-04 19:21:19 +08:00
SoftFever
acd5dd0794 v3.1: OrcaFilamentLibrary re-mint under the product-triple rule
Phase v3.1 of filament_id_plan_v3.md: every OFL-declared filament_id
re-derives from its product triple; the succession ledger absorbs the old
ids. Config-equivalence verified: flattened effective configs differ ONLY
in filament_id (284 consistent old->new changes tree-wide, including every
vendor preset that rides an OFL family), zero config/compatible_printers/
setting_id drift.

Structural pre-step (id-value-neutral, verified): OFL generic family ids
move from the shared fdm_filament_* template bases onto the product-named
"Generic X @System" presets, so the v3 triple's family component is the
product name, not an internal file name (12 relocations; 2 dead duplicate
declarations on fdm_filament_pa/pet pruned; every consumer chain itemized
first - the +12 instantiated_with_id entries are this deliberate pattern,
matching the 11 generics that already declared on @System).
fdm_filament_pc keeps its declaration this phase: 7 Prusa presets (Prusa
Generic PC, Prusament PC Blend) inherit it directly and re-home in the
v3.2 Prusa worksheet; its transitional id is documented in the plan.

Re-mint: 301 declarations re-derived (e.g. Generic PLA OGFL99 ->
OFDSrzZ8 = mint("filament_product/Generic/PLA/Generic PLA")). Snapshot:
1477 ids (+300/-292). Ledger:
- 230 shipped ids retired with mode-rule successors (OGF* library ids,
  OFLSBS99, DREMC/FILAR/AliZ/eSUN/... legacy strings). DREMC010 had been
  shared by a PPA-CF and a TPU family - a data bug this split resolves;
  its successor follows its only shipped claim (DREMC PPA-CF).
- 25 GF-shaped ids OFL had copied from the Bambu catalog (GFOT00x
  Overture, GFSEP0xx) are RELEASED to the BBL island space with hints at
  the re-minted families - never retired, so a future legitimate BBL
  catalog addition is never blocked; plus an explicit GFOT001 ->
  OFxA1p01 hint (Overture PLA Pro, still live in BBL).
- 37 never-shipped v1 branch mints dropped from lineage
  (--forget-never-shipped; they exist in no release, no forwarding
  needed).
- OGFC99/OGFG99/OGFL96/OGFN99/OGFSNL08 stay live (still declared by
  vendor bundles); they retire in v3.2 when those declarers re-mint.

Gates: 106 unit tests OK; --check exit 0; orca_extra_profile_check exit 0;
validator -l 2 / -f tree-wide / -r BBL+Qidi exit 0; Moonraker OFL map
check resolves all 29 aliases against the re-minted presets; flatten
equivalence pre/post as above; snapshot regen idempotent.
2026-07-04 16:41:41 +08:00
SoftFever
2c0867619c v3.0: content-addressed mint tooling, succession runtime, W1 hardening
Implements phase v3.0 of filament_id_plan_v3.md - tooling and client
prerequisites. No filament_id values change in this commit.

Tooling (scripts/assign_filament_ids.py; 106 unit tests):
- The mint key becomes "filament_product/<filament_vendor>/<filament_type>/
  <family_name>", resolved loader-faithfully from the declarer's flattened
  config - bundle-independent and content-addressed; identity fixes re-id
  by design and are made safe by the succession ledger. --mint now takes
  the triple.
- The snapshot gains "triples" and "triple_exceptions" sections, folded
  into the equality gate: any vendor/type/name change surfaces as a
  reviewable snapshot diff. Check 3 rewritten to triple-mint conformance
  with (id, triple) grandfathering; check 5 generalized from OFL generics
  to every OFL-riding vendor preset; new check 8 (triple integrity) and
  check 9 (succession integrity).
- The retired ledger moves to resources/profiles/retired_filament_ids.json
  so it ships with the app; schema {claims, successor} plus cross-island
  "hints". The 14 v1 entries are migrated with mode-rule successors.
  Vanished ids in a foreign island's space (GF*/QD_*) are RELEASED with a
  hint instead of retired: the island catalog owns them and may
  legitimately (re)ship them, which check 4 must never block.
- New maintenance modes: --remint VENDOR, --drop-redundant-ids VENDOR,
  --add-hint "OLD=NEW", and --update-snapshot --forget-never-shipped FILE
  (never-shipped ids drop from lineage; chains splice through them).

Runtime (C++):
- Succession helpers in libslic3r/Preset (pure chain-follow + lazy ledger
  load from resources), consulted only on resolution miss in
  get_filament_by_filament_id, both AMS sync predicates,
  add_ams_filaments, setting_id_to_type, and the calibration-history
  lookup; behavior is byte-identical while the ledger has no matching
  entry. Catch2 coverage in tests/libslic3r.
- W1 hardening: check_ams_filament_valid no longer remote-wipes trays or
  rewrites temps for P-shaped ids that a system preset carries (ten such
  system ids ship today); the size==8 && [0]=='P' assert is relaxed; the
  unguarded filament_list find deref in the temp-equation check returns
  non-destructively on a miss.
- MoonrakerPrinterAgent: the 23 hardcoded OFL generic ids are replaced by
  a runtime lookup of "Generic <family> @System" (id-equivalent on
  today's shipped profiles, follows future re-mints automatically);
  scripts/test_moonraker_lane_data.py derives its expectations from the
  shipped profiles and gains --check-ofl-map.

Profile data (W3 - type is now a key component, so type bugs are fixed
before any re-mint):
- 17 same-name-different-type groups corrected across 50 files (OFL
  Generic PETG-CF/PE-CF/PP-CF; Flashforge ASA Basic/ASA-CF/ABS-CF/HIPS/
  PAHT-CF/PLA Silk; FusRock PAHT; Creality Generic PA6-CF; InfiMech PETG;
  Anycubic TPU 95A / TPU for ACE; Prusa Generic PA-CF/PLA-CF) - every
  value validated against MaterialType::all(); 3 Snapmaker U1 roots gain
  their missing filament_vendor. Flattened-config equivalence vs the
  previous commit: exactly the 54 intended diffs, zero BBL.
- doc/developer-reference/filament_id.md rewritten for the v3 rule.

Ambiguous type divergences (Prusa Generic TPU/TPU HF FLEX-vs-TPU, FusRock
S-Multi/S-PAHT) and all same-type vendor-tag divergences are deferred to
the v3.2 vendor worksheets, catalogued with analysis.
2026-07-04 16:28:56 +08:00
SoftFever
67406b24ba plan v3: OFL as the catalog, content-addressed product ids
Revises the v1 mint rule after the maintainer catch that its key scoped
families to the profile bundle (printer brand), fragmenting one commercial
product into N ids (PolyLite PLA: five bundles, all filament_vendor
"Polymaker", up to five ids).

Architecture: BBL and QD_* stay frozen islands; OrcaFilamentLibrary becomes
the single declaration point for every other material family; vendor
bundles carry only same-alias specializations (no filament_id key) that
shadow the OFL preset per printer and resolve its id through the loader
walk. New mint key: uuid5 over
"filament_product/<filament_vendor>/<filament_type>/<family_name>" from the
root's flattened config — bundle-independent (hoisting families into OFL is
id-stable), and the type component keeps the four known same-name-
different-type groups apart until their data bugs are fixed.

Content-addressing replaces "ids immutable once shipped": identity edits
re-id the family, made safe by turning retired_filament_ids.json into a
shipped succession ledger (old id -> successor, chains allowed,
cross-island hints permitted) consulted on resolution miss in the AMS sync
and lookup paths. The MoonrakerPrinterAgent hardcoded generic-id map is
replaced by a runtime preset lookup, removing the code/profile lockstep.

Migration: v3.0 tooling + W1 client hardening + W3 type fixes; v3.1 OFL
re-mint with succession entries; v3.2 vendor bundles (391 unshipped OF ids
re-derive without retirement; generic tunings re-point to OFL; ~800 shipped
legacy ids re-mint with succession, incl. the 57 multi-vendor GF residue
and the 10 P-hex system ids, which also exits them from the destructive
check_ams_filament_valid P-gate); v3.3 optional id-stable consolidation
into OFL. Gate battery unchanged plus succession-resolution tests.

filament_id_plan_v2.md gets a status note: its P+md5 verdict stands; its
work items are absorbed or superseded by v3.
2026-07-04 14:54:48 +08:00
SoftFever
a395701f29 plan: validate the P+md5 (get_filament_id) mint proposal; record verdict as plan v2
Examined minting system filament_ids with CreatePresetsDialog.cpp:487's
user-custom allocator (adopt-by-base-name, else "P"+md5(name)[0:7]) for
Bambu AMS-sync compatibility. Verdict: keep the OF* mint; capture the
proposal's value through bounded work items instead of a re-mint.

- The device path never validates id shape: tray_info_idx is an opaque
  string end-to-end (DeviceManager.cpp:1642; DevFilaSystem.cpp:512-514)
  and firmware persists arbitrary bytes (bambulab/BambuStudio#5436).
  Resolution is by value against the GF catalog plus the account's cloud
  custom cache; unknown ids show "?" regardless of shape, and system
  presets can never enter that cache (Preset.cpp:2071 gates upload on
  is_user()).
- The only id-shape dispatch in the tree is destructive for P-shaped ids:
  check_ams_filament_valid (DeviceManager.cpp:5335/5352/5395/5410) remotely
  clears an AMS tray (:5345) or rewrites its temps when a P-shaped tray id
  drops out of the user-root preset list — a state name-keyed minting
  creates by construction. GF* and OF* ids are structurally immune.
- The real value is captured without re-minting 391 unshipped ids across
  1327 files: the adopt step == curated GF adoption via the snapshot ledger
  (W4); the hash belongs to user presets (W5, cf. PR #13315); client
  hardening (W1) that the ten already-shipped P-hex system ids (Cubicon x8,
  Ginger, Artillery) need today anyway.

Method: 6 parallel evidence agents (generator semantics, AMS/device path,
exhaustive shape-dispatch sweep, upstream + online sources, tree-wide
dry-run over 5892 presets / 1148 base names, branch change inventory) into
a 3-judge panel (keep-OF* won 23/40 aggregate); the upstream generator was
verified byte-identical to BambuStudio master, and every load-bearing
file:line and number in the document was re-verified against the tree
before commit.
2026-07-03 10:12:21 +08:00
SoftFever
ac12dff1af CI: run the filament subtype check tree-wide
With every vendor's filament_id collisions fixed (356 collision groups /
1256 printer-level ambiguity errors across 30 vendors, plus the 16
library-internal ids and the 10 live library-cross groups), the
duplicate-filament-subtype validation no longer needs the BBL-only scope:
drop -v BBL from the -f step so any new ambiguity in any vendor fails CI.

Local verification of the full workflow against this branch:
- extra JSON check exit 0; validator -l 2 exit 0 (66 vendors);
  -f tree-wide exit 0 (with the library-aware extended validator, which is
  strictly stricter than the released binary CI downloads); -r exit 0 for
  BBL and Qidi.
- custom-preset fixture archives v1.9.0..v2.4.1 overlaid per the workflow:
  six pass outright; v2.3.1/v2.3.2/v2.4.0/v2.4.1 fail locally only on a
  pre-existing Windows-only validator limitation (a user preset with a
  non-ASCII filename reads as empty; reproduced byte-identically on the
  pre-migration base commit, and absent on CI's Linux runners where these
  archives validate green).
2026-07-03 01:10:54 +08:00
SoftFever
33923464ae Cubicon: keep @base presets selectable; mint the variant tier instead
The custom-preset fixture validation (check_profiles.yml step 5, run locally
against the v2.3.2/v2.4.0/v2.4.1 archives) caught a real regression in the
previous Cubicon fix: those archives contain user presets whose inherits
names the @base presets directly ("can not find parent Cubicon ABS @base").
A system preset with instantiation:false is not added to the preset
collection, so flipping the nine @bases was equivalent to deleting their
names - exactly the user-preset drop hazard the migration rules forbid.

Repair: restore all nine @bases byte-identically to their pre-flip state
(instantiated, setting_id, original P510cf* ids; Cubicon PC @base keeps its
minted OFnLnZQo from the copy-paste fix). The AMS ambiguity is instead
resolved Dremel-style: each family's three passthrough variants share one
fresh variant-tier mint as own keys, so on every printer the base and the
variant carry different ids. Zero preset-set change, zero config change,
user presets and fixtures resolve exactly as before the migration.

Verified: fixture archives v2.3.2/v2.4.0/v2.4.1 no longer report missing
parents; config-equivalence holds; orca_extra_profile_check.py exit 0;
assign_filament_ids.py --check exit 0; validator -l 2 exit 0; tree-wide
extended -f still exit 0.
2026-07-03 00:51:29 +08:00
SoftFever
55a3114ec9 Long-tail vendors: family filament_ids (17 vendors, 41 collision groups)
Phase 2 completion - Volumic, Ratrig, Chuanying, Afinia, Eryone, FLSun,
Tiertime, Blocks, CONSTRUCT3D, Co Print, CoLiDo, DeltaMaker, Ginger
Additive, OrcaArena, Peopoly, Wanhao France, iQ. All are P1 copy-paste or
small structural fixes; owners keep their ids by Bambu-catalog/OFL/historic-
introducer precedence, impostor families get fresh deterministic mints,
zero effective-config change:

- Volumic 10 mints (ABS/ASA/PP, PETG/PCTG/ESD, PLA/UNIVERSAL, PA/PPS lines);
  Ratrig 10 (BigNozzle/PunkFil lines off the Generic line's ids); Chuanying
  8 (plus 3 redundant own-id lines removed so parents' minted ids flow to
  the 0.25-nozzle variants); FLSun 4 (S1/T1 High Speed + Silk); Peopoly 4
  (Lancer lines off Generic PLA's GFL99); Afinia 3 (Value PLA/ABS+/Value ABS
  inside the frozen GFx##_## scheme); Co Print 3 (ABS/PETG/TPU off GFL99).
- Tiertime: Generic SBS had copy-pasted Generic PLA's ids on both printer
  lines - one family mint on both variants collapses the split. Eryone: PP
  copy-pasted PETG-CF's EFL43 (same introducing commit) - PP minted.
  Blocks: ASA-CF copy-pasted PLA-CF's BSFI010 - ASA-CF minted. CONSTRUCT3D:
  High Flow PETG minted off GFG99. CoLiDo: both claimants of the invented
  GFA99 re-minted. DeltaMaker: Brand PLA minted off GFL99. OrcaArena:
  Generic PLA Silk minted; the Bambu-clone Arena PLA Silk keeps GFA05
  (catalog precedence). iQ: Grauts HPP4GF25 minted off Fiberthree's IQM1.
- Ginger Additive (P5): the shared fdm_filament_common template carried
  P510eff9; moved onto the two pellet families (Generic PETG keeps it as
  first claimant, Generic PLA minted), template key removed after verifying
  every inheritor still resolves an id.
- Wanhao France (P4): YUMI PLA Bowden stops over-claiming the six
  direct-drive printers covered by YUMI PLA Direct Drive (trim only, no
  mints).

Verified: config-equivalence gate zero unexpected diffs; extra check exit 0;
--check exit 0; validator -l 2 exit 0; and with all 30 vendor migrations
now applied, the extended validator's -f check is clean TREE-WIDE
(0 ambiguity errors, down from 1256 baseline / 16448 with the library-aware
extension); -r exit 0 for BBL and Qidi.
2026-07-03 00:16:01 +08:00
SoftFever
ee125975cf Snapmaker, FlyingBear, Sovol: family filament_ids
Phase 2 long-tail migrations (25 collision groups), zero effective-config
change:

Snapmaker (11 + the tree's one live library-cross group): three Benchy demo
presets coexisting via compatible_prints gating (invisible to the -f check)
get their own mints; the TPE/TPU-High-Flow lines riding shared bases get
family mints across the plain/U1/Dual/J1 variants; 'Snapmaker PLA Matte @U1'
minted; 'Snapmaker PET @Dual' unified onto its own family root id;
'Snapmaker PA-CF @U1' had its compatible_printers triple-duplicated
(self-collision) - deduplicated. The PolyTerra J1/Dual PLA presets that
re-exposed the library's PolyTerra PLA (alias rename) get family mints while
'PolyTerra PLA @0.2 nozzle' keeps the library id via inheritance. Fiberon
families keep their authentic byte-copied Bambu catalog ids (sanctioned
multi-vendor brand sharing, frozen in the snapshot).

FlyingBear (8): every preset carries an own-key Bambu generic id; owners
keep theirs, 15 impostor families (S1/Ghost7/Hyper lines) re-minted
family-atomically - '@S1' and '@Ghost7' siblings move together (20 edits).

Sovol (6): the GFL99 copy-paste epidemic. The five same-alias
'Generic * @Sovol SV08 MAX' tunings just DROP their wrong own-id lines so
the library family ids flow through inheritance (alias-shadow-verified);
Generic PLA Silk / SUNLU PETG adopt their library family ids as own keys
(their inherits point at other families, so deletion would collide); the 21
dedicated Sovol/Polymaker families get fresh mints (23 edits).
'Sovol SV07 PLA' keeps GFL99 unambiguously (sole claimant on SV07), frozen
in the snapshot.

Verified: config-equivalence gate zero unexpected diffs; extra check exit 0;
--check exit 0; validator -l 2 exit 0; extended -f -v Snapmaker/FlyingBear/
Sovol all exit 0.
2026-07-03 00:14:27 +08:00
SoftFever
23b0aabb35 Cubicon, Dremel, Anycubic, Artillery, InfiMech, Creality: family filament_ids
Phase 2 long-tail migrations (56 collision groups across six vendors), zero
effective-config change except where stated:

Cubicon (17): 'Cubicon PC @base' verbatim-copied PA-CF's P510cfd0 at
introduction (90a6c53ad5; PC was the config-light stub) - the PC family gets
a fresh mint via its root. The other groups were all one shape: nine @base
presets instantiated on exactly the two printers their dedicated variants
cover with byte-identical passthrough configs, so no compatible_printers
trim exists that CI would accept (instantiated presets must claim a
printer). Fix: flip the nine @bases to instantiation:false and drop their
setting_ids (bases carry none by convention). Every printer keeps an
identical-config selectable preset per family - verified programmatically
before flipping; no machine default_materials references an @base name.

Dremel (3): 'Dremel Generic PLA' is deliberately selectable alongside its
per-printer variants (#6837 re-exposed it), and the variants carry real
overrides - a genuine AMS ambiguity with no config-neutral trim. The three
variants share the fresh family mint OFUYjPc4 as own keys; the root keeps
GFL99. A deliberate same-family id split (P8 shape): Dremel has no device
ecosystem consuming filament_id, and every alternative is a user-visible
regression of #6837. default_materials resolve unchanged.

Anycubic (14): copy-paste/generic-riding across three id eras; 2022-era
Anycubic Generic ABS/PETG/PLA/TPU keep the catalog ids, 13 families
re-minted atomically (72 edits incl. 48 forced same-family re-ids), retiring
the invented GFABS/GFL92/GFL93/GFPLA* space-containing ids.

Artillery (8): GFL99 umbrella + P-hex copy-pastes; Artillery Generic PLA
keeps GFL99, Artillery PLA keeps Pfcf9c4c, 17 families minted (52 edits),
P284941e retired.

InfiMech (14): pure verbatim Bambu-generic copy-paste; the six InfiMech
Generic owners keep their ids, 15 impostor families minted (34 edits).

Creality (8): HF generics copy-pasted GFL99 + id-less sub-brand lines riding
keeper families; owners keep their git-verified ids, 8 families minted (17
edits, own-key layout for members inheriting heterogeneous per-series
parents).

Verified per batch: config-equivalence gate zero unexpected diffs (the nine
Cubicon @base instantiation flips are the only preset-set changes, reviewed
above); orca_extra_profile_check.py exit 0; assign_filament_ids.py --check
exit 0; validator -l 2 exit 0; extended -f exit 0 for all six vendors
(-v Cubicon/Dremel/Anycubic/Artillery/InfiMech/Creality); 14 fully-vanished
ids appended to the retirement ledger.
2026-07-03 00:13:24 +08:00
SoftFever
095fd9fba4 Prusa: move filament_ids off shared templates onto family roots
Phase 2 of the filament_id cleanup (31 collision groups, all one mechanism:
material-class ids on shared fdm_filament_* templates collapsing HF/-CF/
Prusament lines onto one id, plus 3 overclaims). 18 new @base family roots
(owner generic keeps the legacy id, 12 impostor families get deterministic
mints), 72 config-neutral inherits repoints, 6 template filament_id keys
removed (only where every id-less inheritor is covered by a new root;
fdm_filament_asa/pc keep theirs for the frozen Prusament @XL riders),
3 compatible_printers trims on MINIIS printers covered by dedicated @MINIIS
variants. Frozen name-shaped and _NN per-variant ids stay byte-identical.

Verified: config-equivalence gate zero unexpected diffs; extra check exit 0;
--check exit 0; validator -l 2 exit 0; extended -f -v Prusa exit 0 (was 31
groups / 1035 printer-level errors on the pre-apply copy).
2026-07-03 00:09:05 +08:00
SoftFever
674344b3c1 Elegoo: per-product-line roots and filament_ids
Phase 2 of the filament_id cleanup (37 collision groups; one systematic
mistake: every commercial line inherits the material-class @base and its
E<MAT>B00 id). 23 new per-line @base roots with fresh deterministic mints
(no per-line roots existed, contrary to the plan text), 155 inherits
repoints, 23 index entries inserted between the parent @base and the line's
members (load-bearing order), 6 in-place mints on single-member generic
derivatives.

The @base-owning families keep their ids (Elegoo PLA=EPLAB00 etc.); 2 forced
family-atomic re-ids outside collision groups (Elegoo Rapid TPU 95A @EN2
Series/@Elegoo Giga follow their family). Residual 2-family shares
(GPETGB00/GASAB00 with the Centauri -CF lines, pure-template ETPUB00/
EPAHTB00) are printer-disjoint, validator-clean, and frozen in the snapshot.

Verified: config-equivalence gate zero unexpected diffs; extra check exit 0;
--check exit 0; validator -l 2 exit 0; extended -f -v Elegoo exit 0 (was 37
groups / 1332 printer-level errors on the pre-apply copy).
2026-07-03 00:08:08 +08:00
SoftFever
4fc964d293 Flashforge: re-mint umbrella and OFL-riding filament_ids per family
Phase 2 of the filament_id cleanup (69 within-vendor collision groups plus
the 9 live library-cross groups on Creator 5/5 Pro). 507 filament_id edits +
12 compatible_printers trims (G3U 0.6/0.8 bases and HS bases over-claiming
printers covered by dedicated variants):

- The FFG01 umbrella (~140 presets across many families) is broken up: the
  git-verified introducing family (Flashforge Generic PLA) keeps FFG01, and
  83 other families get fresh deterministic mints; the GFB99/GFG99/GFL99
  G3U-era block is resolved the same way.
- Flashforge-branded presets riding OrcaFilamentLibrary generic ids
  (OGFB99/OGFG99/OGFL98/OGFL99/OGFN96/OGFN98/OGFS98/OGFS99/OGFU99) get their
  own family mints; true generic tunings (Generic PLA / PLA Silk / BVOH)
  keep the library id with the library base name (alias-shadow-consistent).
- Layout deviation, signed off: minted ids are declared as own keys on every
  instantiated member instead of new @base roots, because these families
  inherit up to six heterogeneous per-era umbrella parents and
  config-preserving roots would add ~80 artificial files. The snapshot
  ledger records the resulting instantiated_with_id/id_overrides growth,
  which is exactly the ratchet mechanism for keeping such shapes visible.

Verified: config-equivalence gate zero unexpected diffs; extra check exit 0;
--check exit 0; validator -l 2 exit 0; extended -f -v Flashforge exit 0
(was 69 groups + 9 library-cross).
2026-07-03 00:07:30 +08:00
SoftFever
516267d869 Qidi: re-mint copy-pasted filament_ids per material family
Phase 2 of the filament_id cleanup, worst vendor first (97 collision groups,
the GFB99/GFG99/GFL99 copy-paste epidemic). 435 in-place filament_id edits +
5 compatible_printers trims (broader 0.2-nozzle PETG presets over-claiming
Qidi Q1 Pro 0.2 nozzle, covered by dedicated variants):

- The Bambu-catalog generic owners keep their ids byte-identical (Qidi
  Generic ABS/PETG/PLA/TPU/PA/PA-CF/PLA-CF); 6 stray members inside owner
  families are aligned to their family id.
- 64 brand/product-line families (Bambu/HATCHBOX/Overture/PolyLite/Tinmorry,
  QIDI-brand lines, PLA+/High Speed/TPU-95A) get fresh deterministic mints,
  the same id landing in every per-series root of a family
  (@Q2-Series/@Q2C-Series/@X-Max 4-Series bases are multi-root families).
- QD_* device-protocol ids untouched (frozen contract with QidiPrinterAgent).

Verified: config-equivalence gate zero unexpected diffs (5892 presets);
orca_extra_profile_check.py exit 0; assign_filament_ids.py --check exit 0;
validator -l 2 exit 0; extended -f -v Qidi exit 0 (was 97 groups);
-r -v Qidi exit 0 (all references still resolve).
2026-07-03 00:06:38 +08:00
SoftFever
ab60229311 OrcaFilamentLibrary: give every material family its own filament_id
Phase 1 of the filament_id cleanup (filament_id_plan.md section 5): resolve the
16 library-internal ids that covered several different materials at once and
were visible on every printer of every vendor (empty compatible_printers =
compatible with all).

- 7 existing @base roots get their copy-pasted id replaced with a fresh
  deterministic mint (Elas PLA/ASA copy-pastes of Bambu-mirror ids, eSUN
  copy-pastes incl. the OGFL06 eSUN PLA-Marble / Fiberon PETG-ESD polymer
  mismatch).
- 30 rootless families (23 Elegoo product lines riding the material-class
  E*B00 ids, Generic PETG HF / PETG-CF / PP-CF / PP-GF / PE-CF / PLA Matte
  riding their parent generic's template id, PolyLite Dual PLA) each get a new
  config-equivalent @base root carrying the minted id, inheriting the family's
  previous parent; members re-pointed; index entries inserted before the
  @System entries (loader's filament_id map is built in file order).
- Keepers by precedence stay byte-identical: Bambu-catalog mirrors
  (OGFA00/OGFB01/OGFG00, PolyLite/Overture/Fiberon lines), the OFL generics
  (OGFG99/OGFL99/OGFP97/OGFP99), and the Elegoo root-owning families.

Verified: config-equivalence gate — flattened effective configs of all 5892
instantiated presets are byte-identical to pre-migration except the prescribed
filament_id changes; orca_extra_profile_check.py exit 0;
assign_filament_ids.py --check exit 0; validator -l 2 exit 0 (66 vendors);
extended validator -f -v OrcaFilamentLibrary exit 0 (16 collision ids
resolved) and -f -v BBL exit 0 (all 26 BBL-shared ids are same-material
mirrors, alias-shadowed on every overlapping BBL printer — no BBL file
touched). Snapshot: +37 minted ids, id_overrides +30 (new roots override
their template parents by design).
2026-07-03 00:05:37 +08:00
SoftFever
1482fb81fd filament_id: deterministic mint rule, sanctioned-state ledger, validator hardening
Phase 0 of the filament_id cleanup (filament_id_plan.md):

- scripts/assign_filament_ids.py: mint OF-prefixed 8-char ids as
  uuid5(FILAMENT_ID_NAMESPACE, filament_family/<vendor>/<family>) in the
  base62 derivation of the setting_id precedent; loader-faithful effective-id
  resolver (vendor inherits chain + OrcaFilamentLibrary fallback); CLI:
  default assign run (idempotent no-op on a fully-idded tree),
  --mint Vendor/Family, --update-snapshot, --check.
- scripts/filament_id_snapshot.json: the sanctioned-state ledger (1092 ids,
  1965 family claims over the current tree). The tree must equal it exactly,
  both directions, so every id/claim change lands as a reviewable diff; a PR
  snapshot diff is the maintainer gate. scripts/retired_filament_ids.json is
  the append-only retirement ledger; --update-snapshot refuses to resurrect
  retired ids and to sanction new reserved-namespace claims (GF*/QD_*/P-hex/
  null) for non-owner vendors without --allow-shared-catalog.
- orca_extra_profile_check.py: runs check_filament_ids() tree-wide (format,
  snapshot equality, mint conformance, retired reuse, alias hygiene for tuned
  OFL generics, reserved namespaces, structure ratchet). The pre-existing
  check_filament_id() 8-char rule stays BBL/OFL-scoped: grandfathered longer
  ids exist elsewhere (e.g. Prusa's 36-char name ids) and are frozen via the
  snapshot instead.
- PresetBundle::check_duplicate_filament_subtypes now includes
  OrcaFilamentLibrary presets in every vendor's per-printer duplicate check;
  alias-shadowed library presets are excluded via the existing
  m_excluded_from population (verified live in the validator load path), so
  only genuinely visible duplicates are flagged. AMS tray-id resolution logs
  a warning when a filament_id matches 2+ compatible presets (pick unchanged).
- doc/developer-reference/filament_id.md: the authoring rule; PR template
  gains a no-hand-written-ids checkbox.
- scripts/tests/test_filament_id.py: 46 stdlib-unittest tests (mint vectors,
  resolver semantics, every check firing/silent, ledger round-trips, byte
  preservation, real-tree smoke).

Verified: python -m unittest discover -s scripts/tests (46 OK);
python scripts/orca_extra_profile_check.py exit 0 on the unmigrated tree;
assign run is a no-op; rebuilt OrcaSlicer_profile_validator -l 2 exit 0;
extended -f is strictly additive vs baseline (every baseline group preserved,
all new groups involve library presets, alias exclusion proven by BBL-mirror
absence on BBL printers).
2026-07-02 23:17:15 +08:00
SoftFever
051cdd4560 init 2026-07-02 21:57:56 +08:00
4897 changed files with 61979 additions and 21200 deletions

5
.gitattributes vendored
View File

@@ -5,3 +5,8 @@
# with CRLF line endings: it fails on the first line. Windows checkouts default # with CRLF line endings: it fails on the first line. Windows checkouts default
# to core.autocrlf=true, so keep these LF whatever the platform. # to core.autocrlf=true, so keep these LF whatever the platform.
*.sh text eol=lf *.sh text eol=lf
# Batch files are read by cmd.exe, which tracks a byte offset into the file to
# resume after `call :label`. With LF endings that offset can land wrong and the
# label lookup fails, so keep these CRLF whatever the platform.
*.bat text eol=crlf

View File

@@ -33,6 +33,8 @@ on:
- 'build_linux.sh' - 'build_linux.sh'
- 'build_release_vs.bat' - 'build_release_vs.bat'
- 'build_release_vs2022.bat' - 'build_release_vs2022.bat'
- 'build_win.bat'
- 'scripts/test_build_win.ps1'
- 'build_release_macos.sh' - 'build_release_macos.sh'
- 'scripts/build_preset_cache.*' - 'scripts/build_preset_cache.*'
- 'scripts/flatpak/**' - 'scripts/flatpak/**'
@@ -56,6 +58,22 @@ concurrency:
jobs: jobs:
# build_win.bat ships a test suite. Run it before the Windows builds.
check_build_script:
name: Windows build script tests
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v7
with:
lfs: 'false'
# Windows PowerShell rather than pwsh: the suite drives build_win.bat
# through cmd, and the two differ in how they quote native arguments.
- name: Run the build script test suite
shell: powershell
run: .\scripts\test_build_win.ps1
build_linux: build_linux:
strategy: strategy:
fail-fast: false fail-fast: false
@@ -81,14 +99,16 @@ jobs:
# SELF_HOSTED skips arm64 (the self-hosted Windows server is x64-only). # SELF_HOSTED skips arm64 (the self-hosted Windows server is x64-only).
matrix: matrix:
include: ${{ fromJSON(vars.SELF_HOSTED include: ${{ fromJSON(vars.SELF_HOSTED
&& '[{"arch":"x64","os":"orca-win-server"}]' && '[{"arch":"x64","os":"orca-win-server","compiler":"clang"}]'
|| '[{"arch":"x64","os":"windows-latest"},{"arch":"arm64","os":"windows-11-arm"}]') }} || '[{"arch":"x64","os":"windows-latest","compiler":"clang"},{"arch":"arm64","os":"windows-11-arm","compiler":"clang"}]') }}
needs: check_build_script
# Don't run scheduled builds on forks: # Don't run scheduled builds on forks:
if: ${{ !cancelled() && (github.event_name != 'schedule' || github.repository == 'OrcaSlicer/OrcaSlicer') }} if: ${{ !cancelled() && needs.check_build_script.result == 'success' && (github.event_name != 'schedule' || github.repository == 'OrcaSlicer/OrcaSlicer') }}
uses: ./.github/workflows/build_check_cache.yml uses: ./.github/workflows/build_check_cache.yml
with: with:
os: ${{ matrix.os }} os: ${{ matrix.os }}
arch: ${{ matrix.arch }} arch: ${{ matrix.arch }}
compiler: ${{ matrix.compiler }}
build-deps-only: ${{ inputs.build-deps-only || false }} build-deps-only: ${{ inputs.build-deps-only || false }}
force-build: ${{ github.event_name == 'schedule' }} force-build: ${{ github.event_name == 'schedule' }}
secrets: inherit secrets: inherit
@@ -259,20 +279,24 @@ jobs:
echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV
echo "git_commit_hash=$git_commit_hash" >> $GITHUB_ENV echo "git_commit_hash=$git_commit_hash" >> $GITHUB_ENV
shell: bash shell: bash
- name: Compute the flatpak-builder cache key
id: fp_cache_key
run: echo "key=flatpak-builder-${{ matrix.variant.arch }}-${{ hashFiles('deps/**', 'scripts/flatpak/com.orcaslicer.OrcaSlicer.yml', 'scripts/flatpak/make_deps_tar.sh') }}" >> "$GITHUB_OUTPUT"
shell: bash
# Manage flatpak-builder cache externally so PRs restore but never upload # Manage flatpak-builder cache externally so PRs restore but never upload
- name: Restore flatpak-builder cache - name: Restore flatpak-builder cache
if: github.event_name == 'pull_request' if: github.event_name == 'pull_request'
uses: actions/cache/restore@v6 uses: actions/cache/restore@v6
with: with:
path: .flatpak-builder path: .flatpak-builder
key: flatpak-builder-${{ matrix.variant.arch }}-${{ github.event.pull_request.base.sha }} key: ${{ steps.fp_cache_key.outputs.key }}
restore-keys: flatpak-builder-${{ matrix.variant.arch }}- restore-keys: flatpak-builder-${{ matrix.variant.arch }}-
- name: Save/restore flatpak-builder cache - name: Save/restore flatpak-builder cache
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
uses: actions/cache@v6 uses: actions/cache@v6
with: with:
path: .flatpak-builder path: .flatpak-builder
key: flatpak-builder-${{ matrix.variant.arch }}-${{ github.sha }} key: ${{ steps.fp_cache_key.outputs.key }}
restore-keys: flatpak-builder-${{ matrix.variant.arch }}- restore-keys: flatpak-builder-${{ matrix.variant.arch }}-
- name: Disable debug info for faster CI builds - name: Disable debug info for faster CI builds
run: | run: |
@@ -284,6 +308,12 @@ jobs:
sed -i "/name: OrcaSlicer/{n;s|buildsystem: simple|buildsystem: simple\n build-options:\n env:\n git_commit_hash: \"$git_commit_hash\"|}" \ sed -i "/name: OrcaSlicer/{n;s|buildsystem: simple|buildsystem: simple\n build-options:\n env:\n git_commit_hash: \"$git_commit_hash\"|}" \
scripts/flatpak/com.orcaslicer.OrcaSlicer.yml scripts/flatpak/com.orcaslicer.OrcaSlicer.yml
shell: bash shell: bash
- name: Check the manifest keeps orca_deps cacheable
run: ./scripts/flatpak/check_manifest_cacheable.sh
shell: bash
- name: Pack deps/ for the Flatpak manifest
run: ./scripts/flatpak/make_deps_tar.sh
shell: bash
- uses: flatpak/flatpak-github-actions/flatpak-builder@master - uses: flatpak/flatpak-github-actions/flatpak-builder@master
with: with:
bundle: OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak bundle: OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak

View File

@@ -9,6 +9,10 @@ on:
arch: arch:
required: false required: false
type: string type: string
compiler:
required: false
type: string
default: msvc
build-deps-only: build-deps-only:
required: false required: false
type: boolean type: boolean
@@ -33,10 +37,10 @@ jobs:
- name: set outputs - name: set outputs
id: set_outputs id: set_outputs
env: env:
# Keep macOS/Windows cache keys architecture-specific. amd64 Linux passes # Anything that changes how the tree is built belongs in the key, or a job
# no arch (key stays 'linux-clang', preserving the existing cache); # restores one it cannot use. Linux amd64 passes no arch deliberately, so
# aarch64 gets its own 'linux-clang-aarch64' key. # 'linux-clang' keeps the cache it already has.
cache-os: ${{ runner.os == 'macOS' && format('macos-{0}', inputs.arch) || (runner.os == 'Windows' && format('windows-{0}', inputs.arch) || format('linux-clang{0}', inputs.arch && format('-{0}', inputs.arch) || '')) }} cache-os: ${{ runner.os == 'macOS' && format('macos-{0}', inputs.arch) || (runner.os == 'Windows' && format('windows-{0}-{1}', inputs.arch, inputs.compiler) || format('linux-clang{0}', inputs.arch && format('-{0}', inputs.arch) || '')) }}
# ARM64 builds use the build-arm64 tree (see build_release_vs.bat); x64/other use build. # ARM64 builds use the build-arm64 tree (see build_release_vs.bat); x64/other use build.
dep-folder-name: ${{ runner.os == 'macOS' && format('/{0}', inputs.arch) || (runner.os == 'Windows' && inputs.arch == 'arm64') && '-arm64/OrcaSlicer_dep' || '/OrcaSlicer_dep' }} dep-folder-name: ${{ runner.os == 'macOS' && format('/{0}', inputs.arch) || (runner.os == 'Windows' && inputs.arch == 'arm64') && '-arm64/OrcaSlicer_dep' || '/OrcaSlicer_dep' }}
output-cmd: ${{ runner.os == 'Windows' && '$env:GITHUB_OUTPUT' || '"$GITHUB_OUTPUT"'}} output-cmd: ${{ runner.os == 'Windows' && '$env:GITHUB_OUTPUT' || '"$GITHUB_OUTPUT"'}}
@@ -62,6 +66,7 @@ jobs:
valid-cache: ${{ needs.check_cache.outputs.valid-cache == 'true' }} valid-cache: ${{ needs.check_cache.outputs.valid-cache == 'true' }}
os: ${{ inputs.os }} os: ${{ inputs.os }}
arch: ${{ inputs.arch }} arch: ${{ inputs.arch }}
compiler: ${{ inputs.compiler }}
build-deps-only: ${{ inputs.build-deps-only }} build-deps-only: ${{ inputs.build-deps-only }}
force-build: ${{ inputs.force-build }} force-build: ${{ inputs.force-build }}
secrets: inherit secrets: inherit

View File

@@ -16,6 +16,10 @@ on:
arch: arch:
required: false required: false
type: string type: string
compiler:
required: false
type: string
default: msvc
build-deps-only: build-deps-only:
required: false required: false
type: boolean type: boolean
@@ -135,11 +139,22 @@ jobs:
choco install strawberryperl choco install strawberryperl
} }
$arch = "${{ inputs.arch }}" $arch = "${{ inputs.arch }}"
# -l selects clang-cl and -x Ninja; together they build the deps with clang.
$clang = "${{ inputs.compiler }}" -eq "clang"
$flags = if ($clang) { "-l", "-x" } else { @() }
if ($clang) {
# OpenSSL builds with nmake, which needs a VC environment.
$vswhere = "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe"
$vs = & $vswhere -latest -property installationPath
$devArch = if ($arch -eq "arm64") { "arm64" } else { "amd64" }
Import-Module "$vs\Common7\Tools\Microsoft.VisualStudio.DevShell.dll"
Enter-VsDevShell -VsInstallPath $vs -SkipAutomaticLocation -DevCmdArguments "-arch=$devArch"
}
if ($arch -eq "arm64") { if ($arch -eq "arm64") {
.\build_release_vs.bat deps arm64 .\build_release_vs.bat deps arm64 @flags
.\build_release_vs.bat pack arm64 .\build_release_vs.bat pack arm64
} else { } else {
.\build_release_vs.bat deps .\build_release_vs.bat deps @flags
.\build_release_vs.bat pack .\build_release_vs.bat pack
} }
shell: pwsh shell: pwsh
@@ -149,9 +164,9 @@ jobs:
working-directory: ${{ github.workspace }} working-directory: ${{ github.workspace }}
run: | run: |
if [ -z "${{ vars.SELF_HOSTED }}" ]; then if [ -z "${{ vars.SELF_HOSTED }}" ]; then
brew install automake texinfo libtool brew install automake texinfo libtool pkgconf yasm nasm
fi fi
./build_release_macos.sh -dx ${{ !vars.SELF_HOSTED && '-1' || '' }} -a ${{ inputs.arch }} -t 10.15 ./build_release_macos.sh -dx ${{ !vars.SELF_HOSTED && '-j 3' || '' }} -a ${{ inputs.arch }} -t 10.15
(cd "${{ github.workspace }}/deps/build/${{ inputs.arch }}" && \ (cd "${{ github.workspace }}/deps/build/${{ inputs.arch }}" && \
find . -mindepth 1 -maxdepth 1 ! -name 'OrcaSlicer_dep' -exec rm -rf {} +) find . -mindepth 1 -maxdepth 1 ! -name 'OrcaSlicer_dep' -exec rm -rf {} +)
@@ -204,4 +219,5 @@ jobs:
cache-path: ${{ inputs.cache-path }} cache-path: ${{ inputs.cache-path }}
os: ${{ inputs.os }} os: ${{ inputs.os }}
arch: ${{ inputs.arch }} arch: ${{ inputs.arch }}
compiler: ${{ inputs.compiler }}
secrets: inherit secrets: inherit

View File

@@ -13,6 +13,10 @@ on:
arch: arch:
required: false required: false
type: string type: string
compiler:
required: false
type: string
default: msvc
macos-combine-only: macos-combine-only:
required: false required: false
type: boolean type: boolean
@@ -145,7 +149,7 @@ jobs:
env: env:
ORCA_TESTS_BUILD_ONLY: ${{ inputs.arch == 'arm64' && '1' || '' }} ORCA_TESTS_BUILD_ONLY: ${{ inputs.arch == 'arm64' && '1' || '' }}
run: | run: |
./build_release_macos.sh -s -n -x ${{ !vars.SELF_HOSTED && '-1' || '' }} -a ${{ inputs.arch }} -t 10.15 ${{ inputs.arch == 'arm64' && '-T' || '' }} ./build_release_macos.sh -s -n -x ${{ !vars.SELF_HOSTED && '-j 3' || '' }} -a ${{ inputs.arch }} -t 10.15 ${{ inputs.arch == 'arm64' && '-T' || '' }}
- name: Pack unit tests mac - name: Pack unit tests mac
if: runner.os == 'macOS' && !inputs.macos-combine-only && inputs.arch == 'arm64' if: runner.os == 'macOS' && !inputs.macos-combine-only && inputs.arch == 'arm64'
@@ -204,7 +208,7 @@ jobs:
if: runner.os == 'macOS' && inputs.macos-combine-only if: runner.os == 'macOS' && inputs.macos-combine-only
working-directory: ${{ github.workspace }} working-directory: ${{ github.workspace }}
run: | run: |
./build_release_macos.sh -u -x ${{ !vars.SELF_HOSTED && '-1' || '' }} -a universal -t 10.15 ./build_release_macos.sh -u -x ${{ !vars.SELF_HOSTED && '-j 3' || '' }} -a universal -t 10.15
# Thanks to RaySajuuk, it's working now # Thanks to RaySajuuk, it's working now
- name: Sign app and notary - name: Sign app and notary
@@ -395,7 +399,18 @@ jobs:
# "tests" builds the unit tests too; the unit_tests_windows_* jobs run them. # "tests" builds the unit tests too; the unit_tests_windows_* jobs run them.
run: | run: |
$arch = "${{ inputs.arch }}" $arch = "${{ inputs.arch }}"
if ($arch -eq "arm64") { .\build_release_vs.bat slicer arm64 tests } else { .\build_release_vs.bat slicer tests } # -l selects clang-cl and -x Ninja; together they build the slicer with clang.
$clang = "${{ inputs.compiler }}" -eq "clang"
$flags = if ($clang) { "-l", "-x" } else { @() }
if ($clang) {
# Build against the same VC toolchain and SDK as the dependencies.
$vswhere = "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe"
$vs = & $vswhere -latest -property installationPath
$devArch = if ($arch -eq "arm64") { "arm64" } else { "amd64" }
Import-Module "$vs\Common7\Tools\Microsoft.VisualStudio.DevShell.dll"
Enter-VsDevShell -VsInstallPath $vs -SkipAutomaticLocation -DevCmdArguments "-arch=$devArch"
}
if ($arch -eq "arm64") { .\build_release_vs.bat slicer arm64 @flags tests } else { .\build_release_vs.bat slicer @flags tests }
shell: pwsh shell: pwsh
- name: Build system preset cache (Windows) - name: Build system preset cache (Windows)
@@ -615,6 +630,18 @@ jobs:
name: OrcaSlicer_profile_validator_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }} name: OrcaSlicer_profile_validator_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }}
path: './build/src/Release/OrcaSlicer_profile_validator' path: './build/src/Release/OrcaSlicer_profile_validator'
# generate_system_cache is what scripts/build_preset_cache.sh bakes the
# <vendor>.opc caches with; it was already built by the "Build system
# preset cache (Linux)" step above. The .opc format is 64-bit
# little-endian native, i.e. identical across every platform Orca ships,
# so only the Linux binary is published.
- name: Upload generate_system_cache Ubuntu
if: ${{ ! env.ACT && runner.os == 'Linux' && !vars.SELF_HOSTED && inputs.arch != 'aarch64' }}
uses: actions/upload-artifact@v7
with:
name: generate_system_cache_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }}
path: './build/src/dev-utils/Release/generate_system_cache'
- name: Deploy Ubuntu release - name: Deploy Ubuntu release
if: ${{ github.repository == 'OrcaSlicer/OrcaSlicer' && ! env.ACT && env.deploy_nightly == 'true' && runner.os == 'Linux' && !vars.SELF_HOSTED }} if: ${{ github.repository == 'OrcaSlicer/OrcaSlicer' && ! env.ACT && env.deploy_nightly == 'true' && runner.os == 'Linux' && !vars.SELF_HOSTED }}
uses: WebFreak001/deploy-nightly@v3.2.0 uses: WebFreak001/deploy-nightly@v3.2.0
@@ -645,6 +672,17 @@ jobs:
asset_content_type: application/octet-stream asset_content_type: application/octet-stream
max_releases: 1 max_releases: 1
- name: Deploy Ubuntu generate_system_cache release
if: ${{ github.repository == 'OrcaSlicer/OrcaSlicer' && ! env.ACT && github.ref == 'refs/heads/main' && runner.os == 'Linux' && !vars.SELF_HOSTED && inputs.arch != 'aarch64' }}
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/OrcaSlicer/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ./build/src/dev-utils/Release/generate_system_cache
asset_name: generate_system_cache_Linux${{ env.ubuntu-ver-str }}_nightly
asset_content_type: application/octet-stream
max_releases: 1
- name: Deploy orca_custom_preset_tests - name: Deploy orca_custom_preset_tests
if: ${{ github.repository == 'OrcaSlicer/OrcaSlicer' && ! env.ACT && github.ref == 'refs/heads/main' && runner.os == 'Linux' && !vars.SELF_HOSTED && inputs.arch != 'aarch64' }} if: ${{ github.repository == 'OrcaSlicer/OrcaSlicer' && ! env.ACT && github.ref == 'refs/heads/main' && runner.os == 'Linux' && !vars.SELF_HOSTED && inputs.arch != 'aarch64' }}
uses: WebFreak001/deploy-nightly@v3.2.0 uses: WebFreak001/deploy-nightly@v3.2.0

View File

@@ -9,6 +9,10 @@ on:
- release/* - release/*
paths: paths:
- 'resources/profiles/**' - 'resources/profiles/**'
# The extra JSON check also validates resources/printers/bambu_filament_ids.json,
# and lives in scripts/, so a PR touching only those must still run this workflow.
- 'resources/printers/**'
- 'scripts/**'
- ".github/workflows/check_profiles.yml" - ".github/workflows/check_profiles.yml"
workflow_dispatch: workflow_dispatch:
@@ -64,13 +68,14 @@ jobs:
set +e set +e
./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -s -l 2 2>&1 | tee ${{ runner.temp }}/validate_slice.log ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -s -l 2 2>&1 | tee ${{ runner.temp }}/validate_slice.log
exit ${PIPESTATUS[0]} exit ${PIPESTATUS[0]}
# For now run filament subtype check only for BBL profiles until we fix other vendors' profiles. # All vendors' filament_id collisions were fixed (see scripts/filament_id_snapshot.json),
- name: validate filament subtype check for BBL profiles # so the duplicate-filament-subtype check runs tree-wide.
- name: validate filament subtype check
id: validate_filament_subtypes id: validate_filament_subtypes
continue-on-error: true continue-on-error: true
run: | run: |
set +e set +e
./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 -v BBL -f 2>&1 | tee ${{ runner.temp }}/validate_filament_subtypes.log ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 -f 2>&1 | tee ${{ runner.temp }}/validate_filament_subtypes.log
exit ${PIPESTATUS[0]} exit ${PIPESTATUS[0]}
- name: validate custom presets - name: validate custom presets
@@ -217,7 +222,7 @@ jobs:
fi fi
if [ "${{ steps.validate_filament_subtypes.outcome }}" = "failure" ]; then if [ "${{ steps.validate_filament_subtypes.outcome }}" = "failure" ]; then
echo "### BBL Filament Subtype Validation Failed" echo "### Filament Subtype Validation Failed"
echo "" echo ""
echo '```' echo '```'
head -c 30000 ${{ runner.temp }}/validate_filament_subtypes.log || echo "No output captured" head -c 30000 ${{ runner.temp }}/validate_filament_subtypes.log || echo "No output captured"

View File

@@ -0,0 +1,253 @@
name: Post-merge profiles
# Push-triggered counterpart to check_profiles.yml (which only gates PRs). When a
# profile change lands on main or a release branch, rebuild the affected vendors'
# binary preset caches (<vendor>.opc) and publish each as a versioned ZIP asset on
# a per-Orca-version release of the profiles repo. From there OrcaCloud's OTA
# Manager lists the asset, a maintainer attaches a changelog and hits Publish, and
# only then does it become a live OTA update - this workflow does none of that
# last part (no changelog, no R2, no webhook).
#
# Asset contract expected by OrcaCloud's release scanner:
# ^(\d+\.\d+\.\d+)_([^_]+)_(\d+(?:\.\d+){3})_(\d{12})\.zip$
# <orca_ver>_<vendor>_<profile_version>_<UTC yyyymmddHHMM>.zip (zip root: <vendor>.opc)
#
# Setup (App + secrets): docs/ota/post-merge-profiles-setup.md
on:
push:
branches:
- main
- release/*
paths:
- 'resources/profiles/**'
- '.github/workflows/post_merge_profiles.yml'
workflow_dispatch:
permissions:
contents: read
# One run per branch; let a run finish rather than cancel it, since it publishes.
concurrency:
group: post-merge-profiles-${{ github.ref }}
cancel-in-progress: false
env:
# generate_system_cache is published to this repo's own nightly-builds release
# by build_orca.yml's Linux leg. The job guard pins github.repository to
# OrcaSlicer/OrcaSlicer, so this resolves there.
TOOL_REPO: ${{ github.repository }}
TOOL_ASSET: generate_system_cache_Linux_Ubuntu2404_nightly
# Where per-vendor ZIP assets are published; OrcaCloud's OTA reads this repo.
PROFILES_OWNER: OrcaSlicer
PROFILES_REPO: orcaslicer-profiles
jobs:
publish_profile_caches:
name: Publish profile caches
if: ${{ github.repository == 'OrcaSlicer/OrcaSlicer' }}
# FOLDER_MERGERS is an environment-scoped variable, shared with the PR
# merge bot. Keep this environment free of protection rules so this
# push-triggered job does not wait for a reviewer.
environment: merge-delegation
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v7
with:
# Enough history to reach github.event.before for the changed-vendor
# diff on a normal push; deeper pushes fall back to HEAD^..HEAD in the
# step below. fetch-depth: 0 would clone all of OrcaSlicer's history.
fetch-depth: 50
- name: Resolve changed vendors
id: vendors
shell: bash
env:
FOLDER_MERGERS: ${{ vars.FOLDER_MERGERS }}
run: |
set -euo pipefail
base='${{ github.event.before }}'
head='${{ github.sha }}'
# Zero SHA (branch created / force push) or manual dispatch: fall back
# to this commit's own diff.
if [ -z "$base" ] || [ "$base" = "0000000000000000000000000000000000000000" ] || ! git cat-file -e "$base^{commit}" 2>/dev/null; then
base="$head^"
fi
echo "Diffing $base..$head"
mapfile -t candidates < <(
git diff --name-only "$base" "$head" -- resources/profiles \
| sed -nE 's#^resources/profiles/([^/]+)/.*#\1#p; s#^resources/profiles/([^/]+)\.json$#\1#p' \
| sort -u
)
vendors=()
for v in "${candidates[@]:-}"; do
[ -n "$v" ] || continue
json="resources/profiles/$v.json"
# A vendor has a manifest plus either a preset directory or a version
# field; this drops non-vendor files such as blacklist.json.
if [ -f "$json" ] && { [ -d "resources/profiles/$v" ] || jq -e '.version' "$json" >/dev/null 2>&1; }; then
vendors+=("$v")
fi
done
if [ "${#vendors[@]}" -eq 0 ]; then
echo "No changed vendor profiles in this push; nothing to publish."
echo "vendors=" >> "$GITHUB_OUTPUT"
exit 0
fi
# A vendor is eligible only when both the profile directory and its
# sibling bundle JSON are covered by at least one FOLDER_MERGERS
# grant. The account part is intentionally ignored here: this is a
# post-merge safety check, not an authorization check for a command.
grants=()
while IFS= read -r raw_line; do
line="${raw_line#"${raw_line%%[![:space:]]*}"}"
line="${line%"${line##*[![:space:]]}"}"
[ -n "$line" ] || continue
[[ "$line" == \#* ]] && continue
[[ "$line" == *:* ]] || continue
grant="${line#*:}"
grant="${grant#"${grant%%[![:space:]]*}"}"
grant="${grant%"${grant##*[![:space:]]}"}"
while [[ "$grant" == */ ]]; do grant="${grant%/}"; done
grants+=("$grant")
done <<< "${FOLDER_MERGERS:-}"
is_granted() {
local path="$1"
local grant
for grant in "${grants[@]:-}"; do
if [[ "$path" == "$grant" || "$path" == "$grant/"* ]]; then
return 0
fi
done
return 1
}
unauthorized=()
for v in "${vendors[@]}"; do
if ! is_granted "resources/profiles/$v" || ! is_granted "resources/profiles/$v.json"; then
unauthorized+=("$v")
fi
done
if [ "${#unauthorized[@]}" -ne 0 ]; then
echo "Changed vendor profiles are not covered by FOLDER_MERGERS: ${unauthorized[*]}"
echo "No profile caches will be published for this push."
echo "vendors=" >> "$GITHUB_OUTPUT"
exit 0
fi
printf 'Changed vendors: %s\n' "${vendors[*]}"
echo "vendors=${vendors[*]}" >> "$GITHUB_OUTPUT"
- name: Resolve Orca version
id: orca
if: steps.vendors.outputs.vendors != ''
shell: bash
run: |
set -euo pipefail
raw="$(sed -nE 's/^set\(SoftFever_VERSION "([^"]+)".*/\1/p' version.inc | head -1)"
[ -n "$raw" ] || { echo "::error::could not read SoftFever_VERSION from version.inc"; exit 1; }
orca_ver="${raw%%-*}"
if ! [[ "$orca_ver" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::Orca version '$orca_ver' (from '$raw') is not X.Y.Z"; exit 1
fi
# release_tag is what the desktop client sends as orca_version and what
# OrcaCloud keys R2 on; orca_ver (X.Y.Z) is the asset-name prefix.
echo "release_tag=$raw" >> "$GITHUB_OUTPUT"
echo "orca_ver=$orca_ver" >> "$GITHUB_OUTPUT"
echo "Orca version: release_tag=$raw asset_prefix=$orca_ver"
- name: Validate profile versions
id: pver
if: steps.vendors.outputs.vendors != ''
shell: bash
run: |
set -euo pipefail
: > "$RUNNER_TEMP/pver.tsv"
for v in ${{ steps.vendors.outputs.vendors }}; do
pv="$(jq -r '.version // empty' "resources/profiles/$v.json")"
if ! [[ "$pv" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "::error::vendor $v version '${pv:-<none>}' must be 4 numeric parts (A.B.C.D) for the OTA asset name; fix resources/profiles/$v.json"
exit 1
fi
printf '%s\t%s\n' "$v" "$pv" >> "$RUNNER_TEMP/pver.tsv"
echo "$v -> $pv"
done
- name: Download generate_system_cache
if: steps.vendors.outputs.vendors != ''
shell: bash
env:
# gh (with the default token) rather than an unauthenticated curl: keeps
# working if TOOL_REPO is ever private and avoids anonymous rate limits.
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
set -euo pipefail
gh release download nightly-builds --repo "$TOOL_REPO" \
--pattern "$TOOL_ASSET" --output generate_system_cache --clobber
chmod +x generate_system_cache
- name: Build caches and package assets
id: pkg
if: steps.vendors.outputs.vendors != ''
shell: bash
run: |
set -euo pipefail
# One timestamp for the whole run so a multi-vendor merge groups together.
ts="$(date -u +%Y%m%d%H%M)"
orca_ver='${{ steps.orca.outputs.orca_ver }}'
out="$RUNNER_TEMP/assets"
mkdir -p "$out"
for v in ${{ steps.vendors.outputs.vendors }}; do
./generate_system_cache -p "$GITHUB_WORKSPACE/resources/profiles" -v "$v" -l 2
opc="resources/profiles/$v.opc"
[ -f "$opc" ] || { echo "::error::$opc was not generated"; exit 1; }
pv="$(awk -F'\t' -v v="$v" '$1==v{print $2}' "$RUNNER_TEMP/pver.tsv")"
name="${orca_ver}_${v}_${pv}_${ts}.zip"
( cd resources/profiles && zip -q -j "$out/$name" "$v.opc" )
echo "packaged $name"
done
echo "dir=$out" >> "$GITHUB_OUTPUT"
- name: Mint profiles-repo token
id: token
if: steps.vendors.outputs.vendors != ''
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.PROFILES_APP_ID }}
private-key: ${{ secrets.PROFILES_APP_PRIVATE_KEY }}
owner: ${{ env.PROFILES_OWNER }}
repositories: ${{ env.PROFILES_REPO }}
- name: Publish assets to profiles release
if: steps.vendors.outputs.vendors != ''
shell: bash
env:
GH_TOKEN: ${{ steps.token.outputs.token }}
RELEASE_TAG: ${{ steps.orca.outputs.release_tag }}
ASSET_DIR: ${{ steps.pkg.outputs.dir }}
run: |
set -euo pipefail
repo="$PROFILES_OWNER/$PROFILES_REPO"
if ! gh release view "$RELEASE_TAG" --repo "$repo" >/dev/null 2>&1; then
echo "Creating release $RELEASE_TAG on $repo"
gh release create "$RELEASE_TAG" --repo "$repo" \
--title "$RELEASE_TAG" --notes "Profile cache assets for Orca $RELEASE_TAG." \
--latest=false
fi
# Asset names are timestamp-unique; a clash means a bug, so don't --clobber.
gh release upload "$RELEASE_TAG" --repo "$repo" "$ASSET_DIR"/*.zip
{
echo "### Published to \`$repo\` release \`$RELEASE_TAG\`"
for f in "$ASSET_DIR"/*.zip; do echo "- \`$(basename "$f")\`"; done
} >> "$GITHUB_STEP_SUMMARY"

View File

@@ -32,13 +32,21 @@ jobs:
} }
const allowedLabels = [ const allowedLabels = [
// kind of change
'crash',
'bug-fix', 'bug-fix',
'enhancement', 'enhancement',
'Localization',
'profile',
'QoL', 'QoL',
'optimization',
// area
'UI/UX', 'UI/UX',
'dependencies' 'profile',
'Localization',
// infrastructure
'build',
'test',
'dependencies',
'documentation'
]; ];
const pr = context.payload.pull_request; const pr = context.payload.pull_request;
const labelsList = `${allowedLabels const labelsList = `${allowedLabels
@@ -182,13 +190,21 @@ jobs:
} }
const allowedLabels = [ const allowedLabels = [
// kind of change
'crash',
'bug-fix', 'bug-fix',
'enhancement', 'enhancement',
'Localization',
'profile',
'QoL', 'QoL',
'optimization',
// area
'UI/UX', 'UI/UX',
'dependencies' 'profile',
'Localization',
// infrastructure
'build',
'test',
'dependencies',
'documentation'
]; ];
const issue = context.payload.issue; const issue = context.payload.issue;

3
.gitignore vendored
View File

@@ -1,6 +1,7 @@
Build Build
Build.bat Build.bat
/build*/ /build*/
/out/
CMakeLists.txt.user CMakeLists.txt.user
CMakeUserPresets.json CMakeUserPresets.json
**/CMakeLists.txt.autosave **/CMakeLists.txt.autosave
@@ -51,3 +52,5 @@ internal_docs/
__pycache__/ __pycache__/
*.pyc *.pyc
*.opc *.opc
/.test/
docs/superpowers/

View File

@@ -25,6 +25,13 @@ ctest --test-dir ./tests/libslic3r # individual suite
ctest --test-dir ./tests/fff_print ctest --test-dir ./tests/fff_print
``` ```
## Documentation
- Docs live in `docs/`; the high-level design of a subsystem goes in `docs/HLSD/<subsystem>.md`.
- Describe the design as it stands — what the subsystem does, why it exists, and the constraints that shape it. Not the route that got there: no phases, task lists, status markers, or "before/after this PR" framing.
- Planning and investigation output (brainstorms, superpowers design and plan docs) stays in `docs/superpowers/`, which is gitignored. Never commit it.
- Write a doc only when the design is not evident from the code, and when a change invalidates an existing one, update it in the same PR.
## Code Style ## Code Style
- C++17, selective C++20. PascalCase classes, snake_case functions/variables - C++17, selective C++20. PascalCase classes, snake_case functions/variables

View File

@@ -95,33 +95,6 @@ else ()
add_compile_definitions("$<$<CONFIG:Release>:WXINSPECTOR_DISABLE>") add_compile_definitions("$<$<CONFIG:Release>:WXINSPECTOR_DISABLE>")
endif () endif ()
find_package(Git)
if(DEFINED ENV{git_commit_hash} AND NOT "$ENV{git_commit_hash}" STREQUAL "")
message(STATUS "Specified git commit hash: $ENV{git_commit_hash}")
if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
# Convert the given hash to short hash
execute_process(
COMMAND ${GIT_EXECUTABLE} rev-parse --short "$ENV{git_commit_hash}"
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
else()
# No .git directory (e.g., Flatpak sandbox) — truncate directly
string(SUBSTRING "$ENV{git_commit_hash}" 0 7 GIT_COMMIT_HASH)
endif()
add_definitions("-DGIT_COMMIT_HASH=\"${GIT_COMMIT_HASH}\"")
elseif(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
# Check current Git commit hash
execute_process(
COMMAND ${GIT_EXECUTABLE} log -1 --format=%h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
add_definitions("-DGIT_COMMIT_HASH=\"${GIT_COMMIT_HASH}\"")
endif()
if(DEFINED ENV{SLIC3R_STATIC}) if(DEFINED ENV{SLIC3R_STATIC})
set(SLIC3R_STATIC_INITIAL $ENV{SLIC3R_STATIC}) set(SLIC3R_STATIC_INITIAL $ENV{SLIC3R_STATIC})
else() else()
@@ -137,6 +110,7 @@ option(SLIC3R_WARNINGS "Emit compiler warnings for OrcaSlicer sources"
option(SLIC3R_BUNDLED_WARNINGS "Emit compiler warnings for bundled third-party sources" 0) option(SLIC3R_BUNDLED_WARNINGS "Emit compiler warnings for bundled third-party sources" 0)
option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1) option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1)
option(SLIC3R_MSVC_PDB "Generate PDB files on MSVC in Release mode" 1) option(SLIC3R_MSVC_PDB "Generate PDB files on MSVC in Release mode" 1)
option(SLIC3R_RELATIVE_DEBUG_PATHS "Record a relative compilation directory in debug info (clang-cl)" 0)
option(SLIC3R_ASAN "Enable ASan on Clang and GCC" 0) option(SLIC3R_ASAN "Enable ASan on Clang and GCC" 0)
# Python stubgen module # Python stubgen module
@@ -298,6 +272,8 @@ if (APPLE)
SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.orcaslicer.OrcaSlicer") SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.orcaslicer.OrcaSlicer")
message(STATUS "Orca: IS_CROSS_COMPILE: ${IS_CROSS_COMPILE}") message(STATUS "Orca: IS_CROSS_COMPILE: ${IS_CROSS_COMPILE}")
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(CMAKE_INSTALL_RPATH "$ORIGIN")
endif () endif ()
# Proposal for C++ unit tests and sandboxes # Proposal for C++ unit tests and sandboxes
@@ -360,12 +336,31 @@ if (MSVC)
if (SLIC3R_MSVC_COMPILE_PARALLEL AND CMAKE_GENERATOR MATCHES "Visual Studio") if (SLIC3R_MSVC_COMPILE_PARALLEL AND CMAKE_GENERATOR MATCHES "Visual Studio")
add_compile_options(/MP) add_compile_options(/MP)
endif () endif ()
# Parse lambdas the way the standard says, as clang and GCC already do. Without it
# MSVC keeps its legacy lambda processor under /std:c++17 and rejects reading a
# constexpr constant inside a lambda that does not capture it (C3493), which no
# other compiler requires. Implied by /std:c++20 and /permissive-, so it is only
# needed while we are on C++17. clang-cl is conforming already and does not take
# the flag. Requires VS2019 16.8 or newer.
if (NOT IS_CLANG_CL)
# cl.exe only warns (D9002) about an unknown /Zc: option, so without this the
# flag would be dropped and the first lambda reading a constexpr constant would
# fail with C3493 far from the cause.
if (MSVC_VERSION LESS 1928)
message(FATAL_ERROR "Visual Studio 2019 16.8 (MSVC 19.28) or newer is required; detected MSVC ${MSVC_VERSION}.")
endif ()
add_compile_options(/Zc:lambda)
endif ()
# /bigobj (Increase Number of Sections in .Obj file) # /bigobj (Increase Number of Sections in .Obj file)
add_compile_options(-bigobj)
# error C3859: virtual memory range for PCH exceeded; please recompile with a command line option of '-Zm90' or greater # error C3859: virtual memory range for PCH exceeded; please recompile with a command line option of '-Zm90' or greater
# Generate symbols at every build target, even for the release. # Generate symbols at every build target, even for the release.
# -Zm520 fixes error C3859 but forces the compiler to pre-allocate that memory for every translation unit regardless # -Zm520 fixes error C3859 but forces the compiler to pre-allocate that memory for every translation unit regardless
# combining /Zi with /FS frees up a significant amount of memory pressure across all parallel compile jobs and makes /MP faster overall. # combining /Zi with /FS frees up a significant amount of memory pressure across all parallel compile jobs and makes /MP faster overall.
add_compile_options(-bigobj /Zi /FS) if (SLIC3R_MSVC_PDB)
add_compile_options(/Zi /FS)
endif ()
# Disable STL4007: Many result_type typedefs and all argument_type, first_argument_type, and second_argument_type typedefs are deprecated in C++17. # Disable STL4007: Many result_type typedefs and all argument_type, first_argument_type, and second_argument_type typedefs are deprecated in C++17.
#FIXME Remove this line after eigen library adapts to the new C++17 adaptor rules. #FIXME Remove this line after eigen library adapts to the new C++17 adaptor rules.
add_compile_options(-D_SILENCE_CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING) add_compile_options(-D_SILENCE_CXX17_ADAPTOR_TYPEDEFS_DEPRECATION_WARNING)
@@ -383,6 +378,16 @@ if (MSVC)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LTCG") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LTCG")
endif () endif ()
# Without this every object names its build directory and two worktrees never
# share cache entries. The linker still writes absolute paths into the PDB.
if (SLIC3R_RELATIVE_DEBUG_PATHS)
if (IS_CLANG_CL)
add_compile_options(-ffile-compilation-dir=.)
else ()
message(WARNING "SLIC3R_RELATIVE_DEBUG_PATHS is only implemented for clang-cl")
endif ()
endif ()
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "AppleClang" AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 15) if (${CMAKE_CXX_COMPILER_ID} STREQUAL "AppleClang" AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 15)
add_compile_definitions(BOOST_NO_CXX98_FUNCTION_BASE _HAS_AUTO_PTR_ETC=0) add_compile_definitions(BOOST_NO_CXX98_FUNCTION_BASE _HAS_AUTO_PTR_ETC=0)
endif() endif()
@@ -1065,6 +1070,10 @@ function(orcaslicer_copy_dlls target config postfix output_dlls)
${CMAKE_PREFIX_PATH}/bin/occt/TKXDESTEP.dll ${CMAKE_PREFIX_PATH}/bin/occt/TKXDESTEP.dll
${CMAKE_PREFIX_PATH}/bin/occt/TKXSBase.dll ${CMAKE_PREFIX_PATH}/bin/occt/TKXSBase.dll
${CMAKE_PREFIX_PATH}/bin/freetype.dll ${CMAKE_PREFIX_PATH}/bin/freetype.dll
${CMAKE_PREFIX_PATH}/bin/avcodec-61.dll
${CMAKE_PREFIX_PATH}/bin/swresample-5.dll
${CMAKE_PREFIX_PATH}/bin/swscale-8.dll
${CMAKE_PREFIX_PATH}/bin/avutil-59.dll
DESTINATION ${_out_dir}) DESTINATION ${_out_dir})
set(${output_dlls} set(${output_dlls}
@@ -1100,12 +1109,58 @@ function(orcaslicer_copy_dlls target config postfix output_dlls)
${_out_dir}/TKXSBase.dll ${_out_dir}/TKXSBase.dll
${_out_dir}/freetype.dll ${_out_dir}/freetype.dll
${_out_dir}/avcodec-61.dll
${_out_dir}/swresample-5.dll
${_out_dir}/swscale-8.dll
${_out_dir}/avutil-59.dll
PARENT_SCOPE PARENT_SCOPE
) )
endfunction() endfunction()
function(orcaslicer_copy_sos target config postfix output_sos)
get_property(_is_multi GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
get_target_property(_alt_out_dir ${target} RUNTIME_OUTPUT_DIRECTORY)
if (_alt_out_dir)
set(_out_dir "${_alt_out_dir}")
elseif (_is_multi)
set(_out_dir "${CMAKE_CURRENT_BINARY_DIR}/${config}")
else ()
set(_out_dir "${CMAKE_CURRENT_BINARY_DIR}")
endif ()
file(COPY ${CMAKE_PREFIX_PATH}/lib/libavcodec.so
${CMAKE_PREFIX_PATH}/lib/libavcodec.so.61
${CMAKE_PREFIX_PATH}/lib/libavcodec.so.61.3.100
${CMAKE_PREFIX_PATH}/lib/libavutil.so
${CMAKE_PREFIX_PATH}/lib/libavutil.so.59
${CMAKE_PREFIX_PATH}/lib/libavutil.so.59.8.100
${CMAKE_PREFIX_PATH}/lib/libswscale.so
${CMAKE_PREFIX_PATH}/lib/libswscale.so.8
${CMAKE_PREFIX_PATH}/lib/libswscale.so.8.1.100
${CMAKE_PREFIX_PATH}/lib/libswresample.so
${CMAKE_PREFIX_PATH}/lib/libswresample.so.5
${CMAKE_PREFIX_PATH}/lib/libswresample.so.5.1.100
DESTINATION ${_out_dir})
set(${output_sos}
${_out_dir}/libavcodec.so
${_out_dir}/libavcodec.so.61
${_out_dir}/libavcodec.so.61.3.100
${_out_dir}/libavutil.so
${_out_dir}/libavutil.so.59
${_out_dir}/libavutil.so.59.8.100
${_out_dir}/libswscale.so
${_out_dir}/libswscale.so.8
${_out_dir}/libswscale.so.8.1.100
${_out_dir}/libswresample.so
${_out_dir}/libswresample.so.5
${_out_dir}/libswresample.so.5.1.100
PARENT_SCOPE
)
endfunction()
# Bundled sources set their own warning flags, and a plain -Wall there means /Wall # Bundled sources set their own warning flags, and a plain -Wall there means /Wall
# (= -Weverything) under clang-cl. Target options are applied after the ones a target # (= -Weverything) under clang-cl. Target options are applied after the ones a target
@@ -1217,6 +1272,20 @@ else ()
endif() endif()
endif () endif ()
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(LIBRARY_FILES
${LIBDIR_BIN}/libavcodec.so.61
${LIBDIR_BIN}/libavcodec.so.61.3.100
${LIBDIR_BIN}/libavutil.so.59
${LIBDIR_BIN}/libavutil.so.59.8.100
${LIBDIR_BIN}/libswresample.so.5
${LIBDIR_BIN}/libswresample.so.5.1.100
${LIBDIR_BIN}/libswscale.so.8
${LIBDIR_BIN}/libswscale.so.8.1.100
)
install(FILES ${LIBRARY_FILES} DESTINATION "${CMAKE_INSTALL_PREFIX}/bin")
endif ()
install(FILES ${CMAKE_SOURCE_DIR}/LICENSE.txt DESTINATION ".") install(FILES ${CMAKE_SOURCE_DIR}/LICENSE.txt DESTINATION ".")
configure_file(${LIBDIR}/dev-utils/platform/unix/fhs.hpp.in ${LIBDIR_BIN}/dev-utils/platform/unix/fhs.hpp) configure_file(${LIBDIR}/dev-utils/platform/unix/fhs.hpp.in ${LIBDIR_BIN}/dev-utils/platform/unix/fhs.hpp)

View File

@@ -260,6 +260,9 @@ if [[ ! -f "./scripts/flatpak/com.orcaslicer.OrcaSlicer.yml" ]]; then
exit 1 exit 1
fi fi
echo -e "${YELLOW}Packing deps/ for the manifest...${NC}"
./scripts/flatpak/make_deps_tar.sh
# Build the Flatpak # Build the Flatpak
echo -e "${YELLOW}Building Flatpak package...${NC}" echo -e "${YELLOW}Building Flatpak package...${NC}"
echo -e "This may take a while (30+ minutes depending on your system)..." echo -e "This may take a while (30+ minutes depending on your system)..."

View File

@@ -4,7 +4,7 @@ set -e
set -o pipefail set -o pipefail
SECONDS=0 SECONDS=0
while getopts ":dpa:snt:xbc:i:1Tuh" opt; do while getopts ":dpa:snt:xbc:i:j:Tuh" opt; do
case "${opt}" in case "${opt}" in
d ) d )
export BUILD_TARGET="deps" export BUILD_TARGET="deps"
@@ -38,8 +38,8 @@ while getopts ":dpa:snt:xbc:i:1Tuh" opt; do
i ) i )
export CMAKE_IGNORE_PREFIX_PATH="${CMAKE_IGNORE_PREFIX_PATH:+$CMAKE_IGNORE_PREFIX_PATH;}$OPTARG" export CMAKE_IGNORE_PREFIX_PATH="${CMAKE_IGNORE_PREFIX_PATH:+$CMAKE_IGNORE_PREFIX_PATH;}$OPTARG"
;; ;;
1 ) j )
export CMAKE_BUILD_PARALLEL_LEVEL=1 export CMAKE_BUILD_PARALLEL_LEVEL="$OPTARG"
;; ;;
T ) T )
export BUILD_TESTS="1" export BUILD_TESTS="1"
@@ -58,7 +58,7 @@ while getopts ":dpa:snt:xbc:i:1Tuh" opt; do
echo " -b: Build without reconfiguring CMake" echo " -b: Build without reconfiguring CMake"
echo " -c: Set CMake build configuration, default is Release" echo " -c: Set CMake build configuration, default is Release"
echo " -i: Add a prefix to ignore during CMake dependency discovery (repeatable), defaults to /opt/local:/usr/local:/opt/homebrew" echo " -i: Add a prefix to ignore during CMake dependency discovery (repeatable), defaults to /opt/local:/usr/local:/opt/homebrew"
echo " -1: Use single job for building" echo " -j: Set the number of parallel build jobs (CMAKE_BUILD_PARALLEL_LEVEL)"
echo " -T: Build and run tests (set ORCA_TESTS_BUILD_ONLY=1 to build without running)" echo " -T: Build and run tests (set ORCA_TESTS_BUILD_ONLY=1 to build without running)"
exit 0 exit 0
;; ;;

View File

@@ -20,6 +20,18 @@ for %%a in (%*) do (
if "%%a"=="-x" set USE_NINJA=1 if "%%a"=="-x" set USE_NINJA=1
) )
@REM Check for clang-cl option (-l). Combined with -x it also builds the deps with
@REM clang-cl; on the Visual Studio generator it applies to the slicer only, because
@REM the dependency sub-builds have no toolset to inherit and stay on MSVC.
set CLANG_ARG=
set TOOLSET_ARG=
for %%a in (%*) do (
if "%%a"=="-l" (
set CLANG_ARG=-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl
set TOOLSET_ARG=-T ClangCL
)
)
@REM Check for unit-tests option ("tests") @REM Check for unit-tests option ("tests")
set BUILD_TESTS=OFF set BUILD_TESTS=OFF
for %%a in (%*) do ( for %%a in (%*) do (
@@ -74,7 +86,7 @@ if "%VS_MAJOR%"=="16" (
set CMAKE_GENERATOR="Visual Studio 18 2026" set CMAKE_GENERATOR="Visual Studio 18 2026"
) else ( ) else (
echo Error: Unsupported Visual Studio version: %VS_MAJOR% echo Error: Unsupported Visual Studio version: %VS_MAJOR%
echo Supported versions: VS2019 (16.x^), VS2022 (17.x^), VS2026 (18.x^) echo Supported versions: VS2019 (16.8+^), VS2022 (17.x^), VS2026 (18.x^)
exit /b 1 exit /b 1
) )
@@ -127,12 +139,13 @@ if "%1"=="slicer" (
GOTO :slicer GOTO :slicer
) )
echo "building deps.." echo "building deps.."
if defined CLANG_ARG if "%USE_NINJA%"=="0" echo Note: -l needs -x for the dependencies; building them with MSVC.
echo on echo on
REM Set minimum CMake policy to avoid <3.5 errors REM Set minimum CMake policy to avoid <3.5 errors
set CMAKE_POLICY_VERSION_MINIMUM=3.5 set CMAKE_POLICY_VERSION_MINIMUM=3.5
if "%USE_NINJA%"=="1" ( if "%USE_NINJA%"=="1" (
cmake ../ -G %CMAKE_GENERATOR% -DCMAKE_BUILD_TYPE=%build_type% cmake ../ -G %CMAKE_GENERATOR% %CLANG_ARG% -DCMAKE_BUILD_TYPE=%build_type%
cmake --build . --config %build_type% --target deps cmake --build . --config %build_type% --target deps
) else ( ) else (
cmake ../ -G %CMAKE_GENERATOR% -A %arch% -DCMAKE_BUILD_TYPE=%build_type% cmake ../ -G %CMAKE_GENERATOR% -A %arch% -DCMAKE_BUILD_TYPE=%build_type%
@@ -151,10 +164,10 @@ cd %build_dir%
echo on echo on
set CMAKE_POLICY_VERSION_MINIMUM=3.5 set CMAKE_POLICY_VERSION_MINIMUM=3.5
if "%USE_NINJA%"=="1" ( if "%USE_NINJA%"=="1" (
cmake .. -G %CMAKE_GENERATOR% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type% cmake .. -G %CMAKE_GENERATOR% %CLANG_ARG% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
cmake --build . --config %build_type% --target all cmake --build . --config %build_type% --target all
) else ( ) else (
cmake .. -G %CMAKE_GENERATOR% -A %arch% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type% cmake .. -G %CMAKE_GENERATOR% -A %arch% %TOOLSET_ARG% -DORCA_TOOLS=ON %SIG_FLAG% -DBUILD_TESTS=%BUILD_TESTS% -DCMAKE_BUILD_TYPE=%build_type%
cmake --build . --config %build_type% --target ALL_BUILD -- -m cmake --build . --config %build_type% --target ALL_BUILD -- -m
) )
@echo off @echo off

1396
build_win.bat Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -21,6 +21,9 @@ orcaslicer_add_cmake_project(Assimp
URL ${_assimp_url} URL ${_assimp_url}
URL_HASH ${_assimp_hash} URL_HASH ${_assimp_hash}
CMAKE_ARGS CMAKE_ARGS
# Assimp's ccache support sets the global RULE_LAUNCH_COMPILE, which breaks
# the Ninja RC rule. The superbuild forwards CMAKE_<LANG>_COMPILER_LAUNCHER.
-DASSIMP_BUILD_USE_CCACHE=OFF
-DASSIMP_BUILD_TESTS=OFF -DASSIMP_BUILD_TESTS=OFF
-DASSIMP_BUILD_SAMPLES=OFF -DASSIMP_BUILD_SAMPLES=OFF
-DASSIMP_BUILD_ASSIMP_TOOLS=OFF -DASSIMP_BUILD_ASSIMP_TOOLS=OFF

View File

@@ -24,6 +24,13 @@ if (MSVC AND DEP_DEBUG)
set(_options "FORWARD_CONFIG") set(_options "FORWARD_CONFIG")
endif () endif ()
# Boost.Container's bundled dlmalloc passes int* where the Win32 Interlocked API
# takes volatile long*; cl compiles that with a warning, clang errors out.
set(_boost_c_flags_line "")
if (MSVC AND CMAKE_C_COMPILER_ID STREQUAL "Clang")
set(_boost_c_flags_line "-DCMAKE_C_FLAGS:STRING=-Wno-incompatible-pointer-types")
endif ()
orcaslicer_add_cmake_project(Boost orcaslicer_add_cmake_project(Boost
${_options} ${_options}
URL "https://github.com/boostorg/boost/releases/download/boost-1.84.0/boost-1.84.0.tar.gz" URL "https://github.com/boostorg/boost/releases/download/boost-1.84.0/boost-1.84.0.tar.gz"
@@ -38,6 +45,7 @@ orcaslicer_add_cmake_project(Boost
"${_context_abi_line}" "${_context_abi_line}"
"${_context_arch_line}" "${_context_arch_line}"
"${_context_impl_line}" "${_context_impl_line}"
"${_boost_c_flags_line}"
) )
set(DEP_Boost_DEPENDS ZLIB) set(DEP_Boost_DEPENDS ZLIB)

17
deps/CMakeLists.txt vendored
View File

@@ -157,8 +157,16 @@ endif ()
function(orcaslicer_add_cmake_project projectname) function(orcaslicer_add_cmake_project projectname)
cmake_parse_arguments(P_ARGS "FORWARD_CONFIG" "INSTALL_DIR;BUILD_COMMAND;INSTALL_COMMAND" "CMAKE_ARGS" ${ARGN}) cmake_parse_arguments(P_ARGS "FORWARD_CONFIG" "INSTALL_DIR;BUILD_COMMAND;INSTALL_COMMAND" "CMAKE_ARGS" ${ARGN})
# MSVC is true for clang-cl as well, so the sub-build toolchain has to key on the
# generator. A non-Visual-Studio superbuild passes its own generator down, and with
# it the CMAKE_C_COMPILER / CMAKE_CXX_COMPILER forwarded below.
set(_dep_msvc_gen FALSE)
if (MSVC AND CMAKE_GENERATOR MATCHES "Visual Studio")
set(_dep_msvc_gen TRUE)
endif ()
set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE})
if (_is_multi OR MSVC) if (_is_multi OR _dep_msvc_gen)
if (P_ARGS_FORWARD_CONFIG) if (P_ARGS_FORWARD_CONFIG)
set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE})
elseif (ORCA_INCLUDE_DEBUG_INFO AND NOT DEP_DEBUG) elseif (ORCA_INCLUDE_DEBUG_INFO AND NOT DEP_DEBUG)
@@ -174,7 +182,7 @@ function(orcaslicer_add_cmake_project projectname)
set(_target_config "Release") set(_target_config "Release")
endif() endif()
if (MSVC) if (_dep_msvc_gen)
set(_gen CMAKE_GENERATOR "${DEP_MSVC_GEN}" CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}") set(_gen CMAKE_GENERATOR "${DEP_MSVC_GEN}" CMAKE_GENERATOR_PLATFORM "${DEP_PLATFORM}")
else() else()
set(_gen "") set(_gen "")
@@ -182,7 +190,7 @@ function(orcaslicer_add_cmake_project projectname)
if ($ENV{CMAKE_BUILD_PARALLEL_LEVEL}) if ($ENV{CMAKE_BUILD_PARALLEL_LEVEL})
set(_build_j "") # assume environment will control --build parallel setting set(_build_j "") # assume environment will control --build parallel setting
elseif(MSVC) elseif(_dep_msvc_gen)
set(_build_j "/m") set(_build_j "/m")
else() else()
set(_build_j "-j${NPROC}") set(_build_j "-j${NPROC}")
@@ -367,7 +375,7 @@ include(libnoise/libnoise.cmake)
include(Draco/Draco.cmake) include(Draco/Draco.cmake)
# Assimp: glTF/GLB/FBX import for the texture-to-color feature. include(FFMPEG/FFMPEG.cmake)
include(Assimp/Assimp.cmake) include(Assimp/Assimp.cmake)
@@ -451,6 +459,7 @@ set(_dep_list
dep_libnoise dep_libnoise
dep_python3 dep_python3
dep_wxInspector dep_wxInspector
dep_FFMPEG
dep_Assimp dep_Assimp
) )

14
deps/CURL/CURL.cmake vendored
View File

@@ -56,6 +56,18 @@ else()
set(_curl_static ON) set(_curl_static ON)
endif() endif()
# curl 7.75's configure probes and code rely on C laxness cl allows but clang
# errors on (implicit function declarations, int* vs u_long* in ioctlsocket),
# which flips probe results and misconfigures nonblock.c into the AmigaOS
# IoctlSocket branch. Relax both diagnostics so the probes behave like cl, and
# pin the camel-case probes off since they only "pass" by implicit declaration.
set(_curl_c_flags_line "")
set(_curl_probe_overrides "")
if (MSVC AND CMAKE_C_COMPILER_ID STREQUAL "Clang")
set(_curl_c_flags_line "-DCMAKE_C_FLAGS:STRING=-Wno-implicit-function-declaration -Wno-incompatible-pointer-types")
set(_curl_probe_overrides -DHAVE_IOCTLSOCKET_CAMEL=0 -DHAVE_IOCTLSOCKET_CAMEL_FIONBIO=0)
endif ()
orcaslicer_add_cmake_project(CURL orcaslicer_add_cmake_project(CURL
# GIT_REPOSITORY https://github.com/curl/curl.git # GIT_REPOSITORY https://github.com/curl/curl.git
# GIT_TAG curl-7_75_0 # GIT_TAG curl-7_75_0
@@ -69,6 +81,8 @@ orcaslicer_add_cmake_project(CURL
-DBUILD_CURL_EXE:BOOL=OFF -DBUILD_CURL_EXE:BOOL=OFF
-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DCURL_STATICLIB=${_curl_static} -DCURL_STATICLIB=${_curl_static}
"${_curl_c_flags_line}"
${_curl_probe_overrides}
${_curl_platform_flags} ${_curl_platform_flags}
) )

View File

@@ -7,5 +7,20 @@ orcaslicer_add_cmake_project(Eigen
URL https://gitlab.com/libeigen/eigen/-/archive/5.0.1/eigen-5.0.1.zip URL https://gitlab.com/libeigen/eigen/-/archive/5.0.1/eigen-5.0.1.zip
URL_HASH SHA256=0dbb1f9e3aaad66f352c03227d8c983f6f0b49e0b07e71a7300f4abcc01aee12 URL_HASH SHA256=0dbb1f9e3aaad66f352c03227d8c983f6f0b49e0b07e71a7300f4abcc01aee12
CMAKE_ARGS "${_eigen_extra_flags}" CMAKE_ARGS "${_eigen_extra_flags}"
# Only the headers are consumed here. Everything below builds nothing we
# use, and all three enable_language(Fortran): test/CMakeLists.txt:9,
# lapack/CMakeLists.txt:6 and blas/testing/CMakeLists.txt:2. They default
# to ON because the dependency configures as its own top-level project.
#
# Whether that probe is harmless depends on what CMake finds. The Visual
# Studio generator supports no Fortran, so it finds nothing; clang-cl sits
# next to the LLVM toolset's flang, which works. MSVC with Ninja finds
# Strawberry Perl's MinGW gfortran instead, which the deps build already
# requires for OpenSSL, and hands it the MSVC-style /machine:x64 that
# MinGW's ld reads as a missing input file. The configure dies there and
# takes the rest of the superbuild with it.
-DEIGEN_BUILD_TESTING=OFF
-DEIGEN_BUILD_BLAS=OFF
-DEIGEN_BUILD_LAPACK=OFF
DEPENDS dep_Boost dep_GMP dep_MPFR DEPENDS dep_Boost dep_GMP dep_MPFR
) )

87
deps/FFMPEG/FFMPEG.cmake vendored Normal file
View File

@@ -0,0 +1,87 @@
set(_conf_cmd ./configure)
if (MSVC)
set(_source_dir "${CMAKE_BINARY_DIR}/dep_FFMPEG-prefix/src/dep_FFMPEG")
set(PREBUILD_URL_arm64 "https://github.com/Noisyfox/FFmpeg-Builds-Orca/releases/download/autobuild-2026-07-17-14-28/ffmpeg-n7.0.3-31-g9b6ffd74b5-winarm64-orca-shared-7.0.zip")
set(PREBUILD_HASH_arm64 "12f4140279f2f8469885e1b5b2e8be9d788882914c21523cacd56989f3548054")
set(PREBUILD_URL_x64 "https://github.com/Noisyfox/FFmpeg-Builds-Orca/releases/download/autobuild-2026-07-17-14-28/ffmpeg-n7.0.3-31-g9b6ffd74b5-win64-orca-shared-7.0.zip")
set(PREBUILD_HASH_x64 "e65916020ddb9ef84b2666dfbcbfc9b1d67f69d15b4a66db53754637bf2d498c")
ExternalProject_Add(dep_FFMPEG
URL ${PREBUILD_URL_${DEPS_ARCH}}
URL_HASH SHA256=${PREBUILD_HASH_${DEPS_ARCH}}
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/FFMPEG
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND
COMMAND ${CMAKE_COMMAND} -E copy_directory "${_source_dir}/bin" "${DESTDIR}/bin"
COMMAND ${CMAKE_COMMAND} -E copy_directory "${_source_dir}/lib" "${DESTDIR}/lib"
COMMAND ${CMAKE_COMMAND} -E copy_directory "${_source_dir}/include" "${DESTDIR}/include"
)
else ()
if (APPLE)
set(_minos_cmd
"--extra-cflags=-mmacosx-version-min=${DEP_OSX_TARGET}"
"--extra-ldflags=-mmacosx-version-min=${DEP_OSX_TARGET}"
)
# Static FFmpeg: nothing to bundle into the .app, no rpath handling.
# Disable the VideoToolbox/AudioToolbox HW-accel paths: the player decodes
# in software (swscale), and the auto-detected HW objects would drag in
# system frameworks that the static libs would then depend on.
set(_link_cmd --enable-static --disable-shared --disable-videotoolbox --disable-audiotoolbox)
if (IS_CROSS_COMPILE)
set(_cross_cmd --enable-cross-compile)
set(_pic_cmd --enable-pic)
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86_64")
set(_arch_cmd --arch=arm64)
set(_cc_cmd "--cc=clang -arch arm64")
else()
set(_arch_cmd --arch=x86_64)
set(_cc_cmd "--cc=clang -arch x86_64")
endif()
endif()
else ()
set(_link_cmd --enable-shared)
endif ()
set(_build_j -j)
if(DEFINED ENV{CMAKE_BUILD_PARALLEL_LEVEL})
set(_build_j "-j$ENV{CMAKE_BUILD_PARALLEL_LEVEL}")
endif()
ExternalProject_Add(dep_FFMPEG
URL https://github.com/FFmpeg/FFmpeg/archive/refs/tags/n7.0.3.tar.gz
URL_HASH SHA256=DEEDCABE339165214A3637DF4C86A507AEF0D793CF8774FF68735F4737E8DDBC
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/FFMPEG
CONFIGURE_COMMAND ${_conf_cmd}
${_cross_cmd}
${_pic_cmd}
${_arch_cmd}
${_cc_cmd}
"--prefix=${DESTDIR}"
${_link_cmd}
${_minos_cmd}
--disable-doc
--enable-small
--disable-outdevs
--disable-filters
--enable-filter=*null*,afade,*fifo,*format,*resample,aeval,allrgb,allyuv,atempo,pan,*bars,color,*key,crop,draw*,eq*,framerate,*_qsv,*_vaapi,*v4l2*,hw*,scale,volume,test*
--disable-protocols
--enable-protocol=file,fd,pipe,rtp,udp
--disable-muxers
--enable-muxer=rtp
--disable-encoders
--disable-decoders
--enable-decoder=*aac*,h264*,mp3*,mjpeg,rv*
--disable-demuxers
--enable-demuxer=h264,mp3,mov
--disable-zlib
--disable-avdevice
BUILD_IN_SOURCE ON
BUILD_COMMAND make ${_build_j}
INSTALL_COMMAND make install
)
endif()

View File

@@ -1,3 +1,20 @@
diff --git a/adm/cmake/occt_defs_flags.cmake b/adm/cmake/occt_defs_flags.cmake
index 00000000..00000001 100644
--- a/adm/cmake/occt_defs_flags.cmake
+++ b/adm/cmake/occt_defs_flags.cmake
@@ -134,7 +134,11 @@
set (CMAKE_CXX_FLAGS "-std=c++0x ${CMAKE_CXX_FLAGS}")
endif()
# Optimize size of binaries
- set (CMAKE_SHARED_LINKER_FLAGS "-Wl,-s ${CMAKE_SHARED_LINKER_FLAGS}")
+ # clang-cl reports the Clang compiler ID, and OCCT builds shared on Windows,
+ # where the MSVC-style linker gets this flag as an argument it does not know.
+ if (NOT WIN32)
+ set (CMAKE_SHARED_LINKER_FLAGS "-Wl,-s ${CMAKE_SHARED_LINKER_FLAGS}")
+ endif()
elseif(MINGW)
add_definitions(-D_WIN32_WINNT=0x0601)
# _WIN32_WINNT=0x0601 (use Windows 7 SDK)
diff --git a/CMakeLists.txt b/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt
index d98acc0f..28eb8eb4 100644 index d98acc0f..28eb8eb4 100644
--- a/CMakeLists.txt --- a/CMakeLists.txt
@@ -168,6 +185,32 @@ index d98acc0f..28eb8eb4 100644
endforeach() endforeach()
if (BUILD_SAMPLES_QT) if (BUILD_SAMPLES_QT)
diff --git a/adm/cmake/occt_macros.cmake b/adm/cmake/occt_macros.cmake
index 224c96b1..8c94a1c5 100644
--- a/adm/cmake/occt_macros.cmake
+++ b/adm/cmake/occt_macros.cmake
@@ -608,7 +608,7 @@ macro (OCCT_INSERT_CODE_FOR_TARGET)
install(CODE "if (\"\${CMAKE_INSTALL_CONFIG_NAME}\" MATCHES \"^([Rr][Ee][Ll][Ee][Aa][Ss][Ee])$\")
set (OCCT_INSTALL_BIN_LETTER \"\")
elseif (\"\${CMAKE_INSTALL_CONFIG_NAME}\" MATCHES \"^([Rr][Ee][Ll][Ww][Ii][Tt][Hh][Dd][Ee][Bb][Ii][Nn][Ff][Oo])$\")
- set (OCCT_INSTALL_BIN_LETTER \"i\")
+ set (OCCT_INSTALL_BIN_LETTER \"\")
elseif (\"\${CMAKE_INSTALL_CONFIG_NAME}\" MATCHES \"^([Dd][Ee][Bb][Uu][Gg])$\")
set (OCCT_INSTALL_BIN_LETTER \"d\")
endif()")
diff --git a/adm/cmake/occt_toolkit.cmake b/adm/cmake/occt_toolkit.cmake
index 550e0e2f..7ac1a3b8 100644
--- a/adm/cmake/occt_toolkit.cmake
+++ b/adm/cmake/occt_toolkit.cmake
@@ -241,7 +241,7 @@
else()
set (aReleasePdbConf)
endif()
- install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb
+ install (FILES $<TARGET_PDB_FILE:${PROJECT_NAME}>
CONFIGURATIONS Debug ${aReleasePdbConf} RelWithDebInfo
DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
endif()
diff --git a/src/Font/Font_FTFont.cxx b/src/Font/Font_FTFont.cxx diff --git a/src/Font/Font_FTFont.cxx b/src/Font/Font_FTFont.cxx
index 5ae9899f..0a17372b 100644 index 5ae9899f..0a17372b 100644
--- a/src/Font/Font_FTFont.cxx --- a/src/Font/Font_FTFont.cxx

View File

@@ -1,3 +1,10 @@
# clang-cl cannot emit IGESAppli_GeneralModule.cxx on ARM64
# (llvm/llvm-project#62081). cl and clang-cl share an ABI.
set(_occt_compiler_args "")
if ("${DEPS_ARCH}" STREQUAL "arm64" AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)
set(_occt_compiler_args -DCMAKE_C_COMPILER:STRING=cl -DCMAKE_CXX_COMPILER:STRING=cl)
endif ()
if(WIN32) if(WIN32)
set(library_build_type "Shared") set(library_build_type "Shared")
else() else()
@@ -31,6 +38,7 @@ orcaslicer_add_cmake_project(OCCT
-DBUILD_MODULE_ModelingAlgorithms=OFF -DBUILD_MODULE_ModelingAlgorithms=OFF
-DBUILD_MODULE_ModelingData=OFF -DBUILD_MODULE_ModelingData=OFF
-DBUILD_MODULE_Visualization=OFF -DBUILD_MODULE_Visualization=OFF
${_occt_compiler_args}
) )
# add_dependencies(dep_OCCT ${FREETYPE_PKG}) # add_dependencies(dep_OCCT ${FREETYPE_PKG})

View File

@@ -10,6 +10,13 @@ else ()
set(_options "") set(_options "")
endif () endif ()
# carotene is OpenCV's ARM NEON HAL. It uses M_PI without _USE_MATH_DEFINES
# and does not compile with clang-cl.
set(_disable_carotene "")
if ("${DEPS_ARCH}" STREQUAL "arm64" AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)
set(_disable_carotene "-DWITH_CAROTENE=OFF")
endif ()
if (IN_GIT_REPO) if (IN_GIT_REPO)
set(OpenCV_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OpenCV-prefix/src/dep_OpenCV) set(OpenCV_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OpenCV-prefix/src/dep_OpenCV)
endif () endif ()
@@ -83,5 +90,6 @@ orcaslicer_add_cmake_project(OpenCV
-DWITH_PROTOBUF=OFF -DWITH_PROTOBUF=OFF
-DWITH_WIN32UI=OFF -DWITH_WIN32UI=OFF
-DHAVE_WIN32UI=FALSE -DHAVE_WIN32UI=FALSE
${_disable_carotene}
) )

View File

@@ -6,7 +6,7 @@ if(DEFINED OPENSSL_ARCH)
set(_cross_arch ${OPENSSL_ARCH}) set(_cross_arch ${OPENSSL_ARCH})
else() else()
if(WIN32) if(WIN32)
if("${CMAKE_GENERATOR_PLATFORM}" STREQUAL "ARM64") if("${DEPS_ARCH}" STREQUAL "arm64")
set(_cross_arch "VC-WIN64-ARM") set(_cross_arch "VC-WIN64-ARM")
else() else()
set(_cross_arch "VC-WIN64A") set(_cross_arch "VC-WIN64A")
@@ -17,10 +17,20 @@ else()
endif() endif()
if(WIN32) if(WIN32)
set(_conf_cmd perl Configure ) set(_openssl_msvc_env CC=cl CXX=cl RC=rc CL=/FS)
# OpenSSL's perl Configure honors the CC environment variable, but the
# VC-WIN64A makefile only works with cl (an unquoted clang-cl path with
# spaces, e.g. exported by CLion, silently produces no .obj files and the
# lib step fails with LNK1181). Pin the upstream toolchain.
# Keep rc.exe resolved from the MSVC developer environment as well. The
# absolute Windows SDK path contains spaces and OpenSSL 1.1.1 writes it to
# the generated nmake file without quoting, which skips .res generation.
# /FS serializes access to OpenSSL's shared generated PDB when cl is
# driven through nmake from a Ninja configure step.
set(_conf_cmd ${CMAKE_COMMAND} -E env ${_openssl_msvc_env} perl Configure )
set(_cross_comp_prefix_line "") set(_cross_comp_prefix_line "")
set(_make_cmd nmake) set(_make_cmd ${CMAKE_COMMAND} -E env ${_openssl_msvc_env} nmake)
set(_install_cmd nmake install_sw ) set(_install_cmd ${CMAKE_COMMAND} -E env ${_openssl_msvc_env} nmake install_sw )
else() else()
if(APPLE) if(APPLE)
set(_conf_cmd export MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} && ./Configure -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET}) set(_conf_cmd export MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} && ./Configure -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET})

4
deps/PNG/PNG.cmake vendored
View File

@@ -1,6 +1,10 @@
if (APPLE) if (APPLE)
# Only disable NEON extension for Apple ARM builds, leave it enabled for Raspberry PI. # Only disable NEON extension for Apple ARM builds, leave it enabled for Raspberry PI.
set(_disable_neon_extension "-DPNG_ARM_NEON=off") set(_disable_neon_extension "-DPNG_ARM_NEON=off")
elseif ("${DEPS_ARCH}" STREQUAL "arm64" AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)
# libpng's CMake ignores PNG_ARM_NEON on Windows ARM64 and skips the NEON
# sources, but pngpriv.h enables NEON anyway.
set(_disable_neon_extension "-DCMAKE_C_FLAGS=/DWIN32 /D_WINDOWS /DPNG_ARM_NEON_OPT=0")
else () else ()
set(_disable_neon_extension "") set(_disable_neon_extension "")
endif () endif ()

View File

@@ -15,7 +15,13 @@ if(WIN32)
# See https://github.com/python/cpython/issues/153438 # See https://github.com/python/cpython/issues/153438
# Patch from https://github.com/python/cpython/pull/153608 # Patch from https://github.com/python/cpython/pull/153608
# This patch has not been merged to 3.12 yet so we need to apply it manually # This patch has not been merged to 3.12 yet so we need to apply it manually
set(_patch_cmd git init && ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/01-windows-nuget.patch) #
# Without core.autocrlf=false the patched find_python.bat comes out LF and
# cmd.exe cannot find its goto labels.
set(_patch_cmd git init
&& ${GIT_EXECUTABLE} -c core.autocrlf=false apply --verbose
--ignore-space-change --whitespace=fix
${CMAKE_CURRENT_LIST_DIR}/01-windows-nuget.patch)
if(MSVC_VERSION EQUAL 1800) if(MSVC_VERSION EQUAL 1800)
set(_python_platform_toolset v120) set(_python_platform_toolset v120)
@@ -53,12 +59,9 @@ if(WIN32)
set(_python_pcbuild_output_dir win32) set(_python_pcbuild_output_dir win32)
endif() endif()
# pybind11 undefines _DEBUG around Python.h so a debug build links the
# release python3xx.lib; Py_DEBUG could not load release plugin modules.
set(_python_pcbuild_config Release) set(_python_pcbuild_config Release)
set(_python_layout_debug OFF)
if(DEFINED DEP_DEBUG AND DEP_DEBUG)
set(_python_pcbuild_config Debug)
set(_python_layout_debug ON)
endif()
# CPython's PCbuild needs a 64-bit-hosted toolchain: find_msbuild.bat picks the # CPython's PCbuild needs a 64-bit-hosted toolchain: find_msbuild.bat picks the
# 32-bit Bin\MSBuild.exe, whose x86 cl.exe/link.exe run out of address space # 32-bit Bin\MSBuild.exe, whose x86 cl.exe/link.exe run out of address space
@@ -101,7 +104,6 @@ if(WIN32)
-DPYTHON_BUILD_DIR=<SOURCE_DIR>/PCbuild/${_python_pcbuild_output_dir} -DPYTHON_BUILD_DIR=<SOURCE_DIR>/PCbuild/${_python_pcbuild_output_dir}
-DPYTHON_DEST_DIR=${DESTDIR}/libpython -DPYTHON_DEST_DIR=${DESTDIR}/libpython
-DPYTHON_LAYOUT_ARCH=${_python_layout_arch} -DPYTHON_LAYOUT_ARCH=${_python_layout_arch}
-DPYTHON_DEBUG=${_python_layout_debug}
-P ${CMAKE_CURRENT_LIST_DIR}/stage_windows.cmake -P ${CMAKE_CURRENT_LIST_DIR}/stage_windows.cmake
) )
elseif(APPLE) elseif(APPLE)

View File

@@ -9,9 +9,6 @@ foreach(_var PYTHON_SOURCE_DIR PYTHON_BUILD_DIR PYTHON_DEST_DIR PYTHON_LAYOUT_AR
endforeach() endforeach()
set(_python_exe "${PYTHON_BUILD_DIR}/python.exe") set(_python_exe "${PYTHON_BUILD_DIR}/python.exe")
if(PYTHON_DEBUG)
set(_python_exe "${PYTHON_BUILD_DIR}/python_d.exe")
endif()
if(NOT EXISTS "${_python_exe}") if(NOT EXISTS "${_python_exe}")
message(FATAL_ERROR "Built Python executable not found: ${_python_exe}") message(FATAL_ERROR "Built Python executable not found: ${_python_exe}")
@@ -49,22 +46,11 @@ endif()
set(_required_files set(_required_files
"${PYTHON_DEST_DIR}/Lib/encodings/__init__.py" "${PYTHON_DEST_DIR}/Lib/encodings/__init__.py"
"${PYTHON_DEST_DIR}/include/Python.h" "${PYTHON_DEST_DIR}/include/Python.h"
"${PYTHON_DEST_DIR}/python.exe"
"${PYTHON_DEST_DIR}/python${_python_abi}.dll"
"${PYTHON_DEST_DIR}/libs/python${_python_abi}.lib"
) )
if(PYTHON_DEBUG)
list(APPEND _required_files
"${PYTHON_DEST_DIR}/python_d.exe"
"${PYTHON_DEST_DIR}/python${_python_abi}_d.dll"
"${PYTHON_DEST_DIR}/libs/python${_python_abi}_d.lib"
)
else()
list(APPEND _required_files
"${PYTHON_DEST_DIR}/python.exe"
"${PYTHON_DEST_DIR}/python${_python_abi}.dll"
"${PYTHON_DEST_DIR}/libs/python${_python_abi}.lib"
)
endif()
foreach(_required_file IN LISTS _required_files) foreach(_required_file IN LISTS _required_files)
if(NOT EXISTS "${_required_file}") if(NOT EXISTS "${_required_file}")
message(FATAL_ERROR "Staged Python file missing: ${_required_file}") message(FATAL_ERROR "Staged Python file missing: ${_required_file}")

View File

@@ -1,3 +1,26 @@
# wxInspector finds wxWidgets through CMake's FindwxWidgets module, which only
# searches lib/vc*_lib because _WX_TOOL is hardcoded to "vc". A superbuild driven
# by clang-cl installs wxWidgets into lib/clang_x64_lib, so hand the module the
# directory wxWidgets actually used, derived the same way wxWidgetsConfig.cmake
# derives it.
set(_wxinspector_wx_hints "")
if (MSVC)
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
set(_wx_compiler_prefix "clang")
else ()
set(_wx_compiler_prefix "vc")
endif ()
set(_wx_arch_suffix "")
if (CMAKE_GENERATOR_PLATFORM AND NOT CMAKE_GENERATOR_PLATFORM STREQUAL "Win32")
string(TOLOWER "_${CMAKE_GENERATOR_PLATFORM}" _wx_arch_suffix)
elseif (CMAKE_SIZEOF_VOID_P EQUAL 8)
set(_wx_arch_suffix "_x64")
endif ()
set(_wxinspector_wx_hints
"-DwxWidgets_ROOT_DIR=${DESTDIR}"
"-DwxWidgets_LIB_DIR=${DESTDIR}/lib/${_wx_compiler_prefix}${_wx_arch_suffix}_lib")
endif ()
orcaslicer_add_cmake_project( orcaslicer_add_cmake_project(
wxInspector wxInspector
URL https://github.com/Noisyfox/wxInspector/archive/refs/tags/v1.0.0.zip URL https://github.com/Noisyfox/wxInspector/archive/refs/tags/v1.0.0.zip
@@ -6,6 +29,7 @@ orcaslicer_add_cmake_project(
CMAKE_ARGS CMAKE_ARGS
-DCMAKE_CXX_FLAGS="-DwxDEBUG_LEVEL=0" -DCMAKE_CXX_FLAGS="-DwxDEBUG_LEVEL=0"
-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON
${_wxinspector_wx_hints}
) )
if (MSVC) if (MSVC)

View File

@@ -1,28 +0,0 @@
---
build/cmake/wxWidgetsConfig.cmake.in | 10 +++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/build/cmake/wxWidgetsConfig.cmake.in b/build/cmake/wxWidgetsConfig.cmake.in
index 1a83f36..70ad8a4 100644
--- a/build/cmake/wxWidgetsConfig.cmake.in
+++ b/build/cmake/wxWidgetsConfig.cmake.in
@@ -58,7 +58,16 @@ if(WIN32_MSVC_NAMING)
endif()
endif()
-include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/@PROJECT_NAME@Targets.cmake")
+if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
+ if (CMAKE_GENERATOR_PLATFORM STREQUAL "ARM64" OR CMAKE_VS_PLATFORM_NAME STREQUAL "ARM64" OR CMAKE_SYSTEM_PROCESSOR MATCHES "^(ARM64|arm64|aarch64)$")
+ set(_wx_clang_msvc_lib_dir "vc_arm64_lib")
+ else()
+ set(_wx_clang_msvc_lib_dir "vc_x64_lib")
+ endif()
+ include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/${_wx_clang_msvc_lib_dir}/@PROJECT_NAME@Targets.cmake")
+else()
+ include("${CMAKE_CURRENT_LIST_DIR}${wxPLATFORM_LIB_DIR}/@PROJECT_NAME@Targets.cmake")
+endif()
macro(wx_inherit_property source dest name)
# property name without _<CONFIG>
--
2.43.0

View File

@@ -28,7 +28,6 @@ orcaslicer_add_cmake_project(
GIT_SHALLOW ON GIT_SHALLOW ON
GIT_SUBMODULES 3rdparty/catch 3rdparty/pcre 3rdparty/libwebp GIT_SUBMODULES 3rdparty/catch 3rdparty/pcre 3rdparty/libwebp
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${JPEG_PKG} DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${JPEG_PKG}
PATCH_COMMAND git apply --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-Clang-CL-fix.patch
CMAKE_ARGS CMAKE_ARGS
-DwxBUILD_PRECOMP=ON -DwxBUILD_PRECOMP=ON
${_wx_toolkit} ${_wx_toolkit}

View File

@@ -162,7 +162,7 @@ static bool stl_read(stl_file *stl, FILE *fp, int first_facet, bool first, Impor
rewind(fp); rewind(fp);
try{ try{
char solid_name[256]; char solid_name[256];
int res_solid = fscanf(fp, " solid %[^\n]", solid_name); int res_solid = fscanf(fp, " solid %255[^\n]", solid_name);
if (res_solid == 1) { if (res_solid == 1) {
char* mw_position = strstr(solid_name, "MW"); char* mw_position = strstr(solid_name, "MW");
if (mw_position != NULL) { if (mw_position != NULL) {
@@ -170,7 +170,7 @@ static bool stl_read(stl_file *stl, FILE *fp, int first_facet, bool first, Impor
char version_str[16]; char version_str[16];
char model_id_str[128]; char model_id_str[128];
char country_code_str[16]; char country_code_str[16];
int num_values = sscanf(mw_position + 3, "%s %s %s", version_str, model_id_str, country_code_str); int num_values = sscanf(mw_position + 3, "%15s %127s %15s", version_str, model_id_str, country_code_str);
if (num_values == 3) { if (num_values == 3) {
if (strcmp(version_str, "1.0") == 0) { if (strcmp(version_str, "1.0") == 0) {
model_id = model_id_str; model_id = model_id_str;

508
docs/HLSD/filament_id.md Normal file
View File

@@ -0,0 +1,508 @@
# Filament IDs (`filament_id`)
`filament_id` identifies one **filament product**: one named spool product = one id, shared by
all of that product's per-printer / per-nozzle variants, in every profile bundle that ships it.
Devices use it to match a physical spool or tray to a filament preset. It is never per-color,
per-printer, per-nozzle, or per-preset (per-preset identity is `setting_id`), and it is never
per-bundle either — PolyLite PLA carries the same id whether the preset lives in the
OrcaFilamentLibrary (OFL), Qidi, or Snapmaker bundle. The granularity is the name on the spool,
not the brand behind it: `AAA PLA Lite` and `AAA PLA Pro` are two filaments with two ids, not
variants of one.
**How it is generated:** an id is computed, never invented. `scripts/orca_id_tool.py`
mints it as a deterministic hash of the product's identity — the triple
`(filament_vendor, filament_type, filament name)`, where the filament name is the preset name
with its `@...` variant suffix stripped — producing an 8-character `OF*` code that is the
same for that product in every bundle, in every PR, on every machine. For example, Polymaker's
PolyLite PLA presets (`PolyLite PLA @base`, `PolyLite PLA@Q2-Series`, …) resolve
`filament_vendor` `Polymaker`, `filament_type` `PLA`, and filament name `PolyLite PLA`; hashing
`filament_product/Polymaker/PLA/PolyLite PLA` yields `OF5CgdDq`, and that is the id the
OrcaFilamentLibrary, OrcaArena, Qidi, and Snapmaker bundles all arrive at independently
(derivation details in the Minting section).
**How it is used:** at runtime the id is the join key between hardware and profiles.
When a printer reports what a tray holds (Bambu AMS, Qidi box, Creality CFS,
Klipper, Snapmaker), OrcaSlicer matches the reported id against the filament presets
compatible with that printer to select the right profile; other features — tray display
names, support-material detection, vitrification warnings, multi-nozzle filament grouping —
look up material properties by id alone. An id that changes is not forwarded anywhere: a
tray or record still holding the old value falls back to matching by material type until the
user re-selects the filament, so identity changes are made deliberately and rarely.
This page is the rule for authoring `filament_id` in system profiles
(`resources/profiles/**`). CI enforces everything below; the short version is:
> [!IMPORTANT]
> **Never write a `filament_id` value by hand.** A new filament gets its id from
> `python scripts/orca_id_tool.py --generate`; one already in the tree has one — inherit it.
## The design, in two pieces
Because several consumers match **globally by id alone, first hit wins** (see the next
section), any two materials sharing one id feed wrong data somewhere — a wrong tray name, a
wrong support-material flag, a wrong nozzle grouping — and inside one printer a duplicated id
makes AMS spool matching a coin toss. Hand-written ids produce such collisions constantly, so
the system is built to make them impossible:
1. **Deterministic minting.** An id is a pure hash of the product's identity — no registry to
maintain, no next-free-number ceremony, no way for two concurrent PRs to race for the same
number, and no way to get it wrong by hand, because you never write it by hand.
2. **A sanctioned snapshot.** The complete id landscape derived from the tree must equal
`scripts/filament_id_snapshot.json` exactly, so every change to ids, claims (which bundles
ship which id, and for which filament), or product identity surfaces as a reviewable diff to
one file — the maintainer gate.
## Who consumes the id
The canonical consumer is tray-to-preset matching: a device reports a tray material id
(`tray_info_idx`), and the shared matching pipeline (`PresetBundle::sync_ams_list` and
friends) resolves it to a preset. The matcher is printer-scoped and first-match-wins:
scanning only compatible root presets — system roots plus user-made custom filaments, which
are user roots carrying their own `P*` ids; a preset derived from another resolves through
its root and never matches directly — it picks the first one whose `filament_id` equals the
tray's. On a miss it falls back by filament type: a system `Generic <type>` preset
(matched by name, then by type similarity), else the slot's previous selection, else any compatible system generic or,
failing that, any compatible system preset, else the slot is skipped — every fallback
selection surfaces a user-visible notice.
Today only the Bambu AMS integration follows this pattern end to end — the device itself
reports the id, `BBLPrinterAgent` translates it out of Bambu's catalog into ours, and the
pipeline does all the matching. The other device integrations still synthesize a preset id
client-side in their agents (by type, brand, or color lookups against the loaded presets)
before the pipeline runs; they are intended to converge on the same pattern, with the
device-reported tray material id flowing through the shared matcher.
| Ecosystem | Where the tray id comes from today |
| --- | --- |
| Bambu AMS | the device itself (RFID / user tray setting), in Bambu's own `GF*` catalog; `BBLPrinterAgent` rewrites it into our id before the matcher sees it (see [The Bambu catalog map](#the-bambu-catalog-map)) |
| Qidi box | composed at runtime as `QD_<series>_<vendor>_<typeidx>` — vendor and type indices from the device's per-slot saved variables, the series digit inferred client-side from the printer model/name. No preset carries a `QD_*` value, so the slot currently resolves by filament type; mapping the composed id onto the filament's minted id belongs in the agent |
| Creality CFS | runtime brand/type scoring returns the winning preset's id |
| Klipper (AFC / Happy Hare) | runtime lookup by filament type |
| Snapmaker | runtime color/vendor/type match |
Tray-to-preset matching is printer-scoped, but **several consumers match globally by id alone,
first hit wins**: tray display names, `filament_is_support`, vitrification warnings, and
multi-nozzle filament grouping in the slicing pipeline (`FilamentGroup::try_merge_filaments`
merges plate slots sharing one `(filament_id, color)` pair, with matching
extruder-printability, onto one nozzle group; the engine is implemented but no grouping path
calls it yet).
Two *different* materials sharing one id
feed wrong data to those consumers even when the presets live in different vendors — so
cross-material id sharing is never safe. Within one printer, duplicate ids break AMS matching:
the matcher picks whichever preset loads first (it now logs an "Ambiguous AMS filament match"
warning, but the pick is still arbitrary) and the tray-edit dialog, which lists one entry per
id, hides the second preset entirely. The profile validator's `-f` check
(`check_filament_subtypes``PresetBundle::check_duplicate_filament_subtypes`) rejects this
per printer, and CI runs it tree-wide.
Two more consumer-side facts worth knowing:
- The machine-facing dialogs (AMS tray edit, AMS dry control, calibration history, extrusion
calibration) offer the filaments a connected printer can use by the same compatibility rule
the plater uses (an empty `compatible_printers` means *every* printer). Alias shadowing
still applies: a vendor's same-name profile supersedes the library generic. That is what
puts Orca Filament Library materials in those lists — deduplicated to one entry per
`filament_id` in the AMS and calibration-history dialogs, while extrusion calibration
deliberately lists every matching preset by full name.
- The id is load-bearing at startup: an instantiated system filament (one marked
`"instantiation": "true"` — see the structure rules) that resolves **no**
`filament_id` anywhere in its `inherits` chain is a hard load error in the C++ loader
(`Can not find filament_id for <name>`) that discards the entire vendor bundle (for the
OrcaFilamentLibrary itself the failure is messier: library presets loaded before the
failing one survive, and every vendor bundle whose filaments inherit from the library is
then discarded for want of a base). CI's structure check catches this before it ships.
## Do I need a new id? The one-question test
> **Would a user consider this a different spool product than anything already in the tree?**
Different polymer, different sub-brand (Basic / Matte / Silk / HF), fiber-filled sibling, or a
second selectable diameter → **new filament, new id**. The same spool tuned for another printer
or nozzle → **join the existing filament** (keep its base name and inherit it; no id
key needed). Tuning a generic material → **join the OrcaFilamentLibrary filament** (inherit
`Generic X @System` and keep the `Generic X` base name; no id key needed).
| Situation | id |
| --- | --- |
| Per-printer / per-nozzle variant of an existing material | same id (inherit it) |
| Sub-brand or product line (PLA vs PLA Matte vs PLA Silk vs PLA HF) | new id each |
| Color | never a new id |
| Second diameter of the same product (1.75 + 2.85) | sibling filament, new id |
| "High-speed" tuned for a *different printer model* | same id (it is a printer variant) |
| "High-speed" selectable *alongside* the normal preset on one printer | new name, so a new id (it is a product line) |
## Structure rules
1. **Every preset carries the id of its own product, wherever it gets it from.** The id is a
function of the preset's own triple (rule 5), and `inherits` carries settings, never
identity. So a preset may declare the key itself or inherit it from any ancestor — a
`<Filament> @base` root, a real (instantiated) preset of the same filament, an
OrcaFilamentLibrary preset — and CI checks one thing: the id it ends up with equals the
mint of *its* triple. The usual shape is one `@base` root (`"instantiation": "false"`)
declaring the key and the per-printer variants inheriting it; a filament may have several
roots — Qidi's PolyLite PLA has four per-series roots (`PolyLite PLA@Q2-Series`,
`@Q2C-Series`, `@X-Max 4-Series`, `@X-Plus 5-Series`) — which then all declare the identical
id. A branded filament that borrows a generic's settings (`Flashforge ABS Basic @FF C5`
inherits `Generic ABS @System`) declares its own id, because its triple is its own.
2. **The filament name is the base name**: the preset name with everything from the first
(optionally space-preceded) `@` stripped. `MyBrand PLA @Orca 3D Fuse1` and `MyBrand PLA@HS`
are both the filament `MyBrand PLA`.
3. **Within one filament, variants' `compatible_printers` are pairwise disjoint** — per printer,
at most one compatible instantiated preset per id, or AMS matching turns ambiguous. The
C++ validator's `-f` check enforces this, tree-wide in CI. Since one product carries one id
and cannot be split onto two, this rule is the *only* remedy for such an ambiguity: narrow
the `compatible_printers`, or retire the preset that duplicates another.
4. **Generics belong to OrcaFilamentLibrary.** A vendor tuning a generic material inherits
`Generic X @System`, keeps the `Generic X` base name (that alias is what hides the library
preset on your printers, and it is what makes its triple — and so its id — the library's)
and sets a non-empty `compatible_printers` — e.g. `Generic PLA @Sovol SV08 MAX` inherits
`Generic PLA @System` and lists three Sovol nozzles. Renaming such a preset makes it a
different product by rule 5, so it then needs its own id.
5. **Ids follow the product identity.** The id is a pure function of the product triple
`(filament_vendor, filament_type, filament name)`, so correcting any of them re-mints the id
**by design**, applied by `--generate` (preview with `--dry-run`, confine with `--vendor`) and
gated by the `--update-snapshot` diff; the exact sequence is in the FAQ. Nothing forwards
the old value, so anything outside the tree that stored it — a device tray, a calibration
record, a saved project — falls back to matching by filament type until the user re-selects
the filament. Re-mint deliberately, and only to fix a genuinely wrong identity.
(`renamed_from` still gates preset-*name* compatibility, as before.)
## Minting — nobody invents ids
New ids are deterministic, computed exactly like the `setting_id` precedent
(the `setting_id` half of `scripts/orca_id_tool.py`):
```text
FILAMENT_ID_NAMESPACE = uuid5(setting-id NAMESPACE, "filament_id")
= c4d3ff49-4c32-5534-a3e3-00894157ab97
filament_id = "OF" + base62_6( uuid5(FILAMENT_ID_NAMESPACE,
"filament_product/<filament_vendor>/<filament_type>/<filament_name>") )
```
`base62_6` is the low 6 base62 digits (alphabet `0-9A-Za-z`) of the UUID taken as a big-endian
integer, most-significant digit first; with the `OF` prefix the full id is 8 chars, within the
AMS length limit. The triple comes from the root preset's *flattened* config:
`<filament_vendor>` is the filament
**manufacturer** (`"Polymaker"`, or `"Generic"` for generics — never the printer brand),
`<filament_type>` the material type, `<filament_name>` the root's base name; the two config
values are inheritable list options and the first element counts.
Content-addressing on that triple is what makes the whole system converge. The key contains no
bundle name, so the same product mints the same id in every bundle — moving a filament into
OrcaFilamentLibrary never changes its id, and two vendors independently shipping the same
product arrive at the same id without coordinating. `Polymaker/PLA/PolyLite PLA` mints
`OF5CgdDq`, and that one id is declared by the OrcaFilamentLibrary, OrcaArena, Qidi, and
Snapmaker bundles alike; the OFL generic `Generic/PLA/Generic PLA` mints `OFDSrzZ8`, claimed
by 35 bundles — most by independent declarations converging on the same mint, the rest
purely through inheritance from the OFL preset.
Nothing but the triple feeds the mint — not the rest of the tree, not the snapshot, not what
another preset of the product happens to carry. Determined triple, determined id: one product
carries one id and there is no second acceptable value for it, so any other value on a preset
is a mismatch `--check` reports and `--generate` pulls back. Two *different* products whose
triples mint the same base62 value would be a collision (a roughly 36-bit id space against a
few thousand products); nothing salts past it: `--check` reports it naming both products,
`--generate` refuses to write it, and the remedy is a rename so their triples differ. Where
two presets of one product would be AMS-ambiguous on a printer, the fix is likewise in the
profiles — make their `compatible_printers` disjoint (structure rule 3), retire the redundant
preset, or, if they really are different products, give them different names so their triples
differ. Never a second id for one triple.
Workflow for a new filament:
```bash
# 1. Author the filament with NO filament_id key anywhere.
python scripts/orca_id_tool.py --dry-run # 2. preview the ids — writes nothing
python scripts/orca_id_tool.py --generate # 3. apply them to the profile file(s)
python scripts/orca_id_tool.py --update-snapshot # 4. record the new claims in the snapshot
python scripts/orca_id_tool.py --check # 5. validate the filament_id state
python scripts/orca_extra_profile_check.py # 6. ...and everything else CI checks
# 7. Commit the profile edits together with scripts/filament_id_snapshot.json, for review.
```
`--generate` makes every filament's id equal the mint of its own
`(filament_vendor, filament_type, filament name)` triple: it inserts one where an instantiated
filament resolves none, and re-derives one that does not match. A preset that *inherits* a
mismatching id is the one case left to the author — check 3b names it, and the fix is to inherit
a preset of the same filament or to give the preset its own key. A declaration is left alone
exactly when it already equals the one id its triple mints, and a collision (check 3d) is
reported and left unwritten. The same run assigns
`generate_preset_setting_id(vendor, type, name)` to every instantiated filament, process
and machine preset of every vendor except BBL, which keeps its authoritative `G*` ids, strips
`setting_id` from base profiles, and fixes the misspelled `settings_id` key — dropped, or, for
BBL, whose ids have no formula to fall back on, restored under the correct name. It is idempotent and
byte-preserving (indentation, BOM, and line endings intact, every edited file re-parsed to fail
loudly), and a no-op on a tree that already passes `scripts/orca_extra_profile_check.py` — the
check CI runs over both id kinds, of which `--check` is the `filament_id` half.
- `--filament-id` limits the run to `filament_id`.
- `--setting-id` limits the run to `setting_id`. The two exclude each other; pass neither to
write both.
- `--vendor VENDOR` confines the run to that bundle; repeatable. The id is a function of the
triple alone, so a narrowed run writes exactly what a full one would; `--check` reports
whatever it left outside.
- `--dry-run` reports what `--generate` would do and writes nothing; with no mode of its own it
implies `--generate`, so `--dry-run --vendor <Vendor>` previews just that bundle.
- `--profiles DIR` points the tooling at a different profile tree (default
`resources/profiles`). `--check` and `--update-snapshot` read and write the sanctioned state of
the tree they are given, so pointing them elsewhere needs `--snapshot PATH` for that tree too —
`scripts/filament_id_snapshot.json` describes `resources/profiles` and no other tree.
**Identity fixes need no separate mode.** `--generate` re-derives an id that no longer matches its
triple exactly the way it fills in a missing one, so a rename or a `filament_vendor` /
`filament_type` correction is just: fix the config, run `--generate` (confine it with `--vendor`,
preview it with `--dry-run`), then `--update-snapshot` and review the diff.
If you skip the tooling, CI fails and prints the remedy: the expected id for your filament and
the instruction to run `python scripts/orca_id_tool.py --generate`; once the id is minted, the
snapshot checks likewise point at `--update-snapshot` and tell you to commit the resulting
diff.
## Reserved namespaces — never mint or hand-write into
A **reserved namespace** is an id space no system profile may declare, because an external
catalog or a device protocol owns the values. None of them has an owning vendor: there is no
bundle — not even the one whose printers use the catalog — that may write one into a profile.
| Space | Status | Rule |
| --- | --- | --- |
| `GF*` | Bambu AMS/RFID catalog | declarable by **nobody**, BBL included: Bambu's own ids live in the generated catalog map, never in a profile |
| `QD_*` | Qidi device protocol | declarable by **nobody**, Qidi included: the box composes these ids at runtime and they are not preset ids |
| `P` + 7 hex chars (case-insensitive), `"null"` | user-created custom filaments (`CreatePresetsDialog.cpp`) | never appears in system profiles |
The two device namespaces, in detail:
- **Bambu (`GF*`).** Bambu's device/RFID/cloud catalog is external and opaque, which is a
reason to keep it out of the profiles rather than to let one bundle own it. Every BBL filament
mints an `OF` id from its triple like every other vendor's, and the correspondence to Bambu's
catalog ids lives in one generated file the app applies at the printer boundary — the next
section. Nothing under `resources/profiles/**` carries a `GF*` id today and nothing can be
exempted, so a `GF*` id appearing anywhere in the tree is a mistake, whoever wrote it.
- **Qidi (`QD_*`).** `QD_*` is a device-*protocol* namespace, not a preset id space: the
Qidi box path composes `QD_<series>_<vendor>_<typeidx>` ids at runtime (slot vendor and
type indices reported by the device, the series digit inferred client-side from the printer
model/name). Qidi presets carry ordinary minted `OF*` ids (generics share the OFL ids), so
a composed id matches no preset and the slot falls back to filament type; translating it to
the filament's id belongs in `QidiPrinterAgent`. The alternative — treating per-series
protocol ids as preset ids — would put one product under five ids (`QIDI PLA Rapido` would
be `QD_0_1_1` through `QD_4_1_1`), exactly the fragmentation the mint rule removes.
## The Bambu catalog map
Bambu's printers, its AMS and its cloud know only Bambu's own catalog ids. Our profiles carry
minted `OF` ids like every other vendor's, so one generated file records the correspondence and
the app applies it **only where an id crosses to or from a Bambu printer**.
**The file** is `resources/printers/bambu_filament_ids.json` — a header plus one row per
catalogued product, keyed by our id:
```json
{
"source": "https://github.com/bambulab/BambuStudio",
"bambustudio_commit": "66e405477",
"generated": "2026-09-04",
"filaments": {
"OFhuaUQB": { "bambu_id": "GFB00", "vendor": "Bambu Lab", "type": "ABS", "name": "Bambu ABS" }
}
}
```
It ships in `resources/printers/`, next to `filaments_blacklist.json` — deliberately not in
`resources/profiles/`, where the loader reads every top-level `.json` as a vendor index. It
holds 100 rows today, one per product BambuStudio ships, and the correspondence is
one-to-one in both directions.
**It is generated, never hand-edited.** `python scripts/update_bambu_filament_ids.py` rebuilds
it from **BambuStudio's own shipped BBL bundle** — a sparse shallow clone of upstream `master`,
or `--bambustudio-dir <a BambuStudio resources/profiles checkout>`. Our BBL bundle is a fork of
Bambu's, tuned and extended independently, so it is not the source of truth for Bambu's ids.
A row's key is the id the product's `(filament_vendor, filament_type, filament name)` triple
mints — the same id any bundle of ours carries for it, since the id is a function of the triple
alone; the row of a product we do not ship sits inert until some bundle claims that triple —
`OFdyfQvU` / `GFG03`, "Bambu PETG Matte", is such a row today.
**Regenerate it in the same commit as every BBL profile sync**, and read the drift report it
prints. Two lines, both informational, neither blocking the write:
```text
upstream ships 'Bambu PETG Matte' (Bambu Lab/PETG), we ship nothing with that identity
Orca BBL filaments with no row: 135 Orca-only product(s)
```
The first names each upstream product our BBL bundle has no same-identity filament for —
sometimes a genuinely missing product, sometimes a name drift a follow-up rename would
converge. The second counts our own BBL filaments that matched no row: 135 of 234 today, of
which 109 send an `OF` id on the wire and 26 already rode `OF` ids inherited from the
OrcaFilamentLibrary. **135 is the number to expect at every regeneration** — 109 was the
one-off size of the transition and stopped being computable from the tree once the BBL bundle
was re-minted, so do not "fix" the report to print it.
**Check 6** lives in `check_filament_ids`, so profile CI runs it alongside the other five. It
holds the file to its contract: it parses, carries `source` / `bambustudio_commit` /
`generated`, keys only `OF`-format ids, maps each Bambu id at most once, and — for every row
whose key the tree actually claims — agrees with the tree on that id's `(vendor, type, name)`
triple. A row for a product we do not ship is skipped, not an error. The remedy it prints is
always the same: regenerate the map and commit the diff for review.
### The runtime rule: swap on hit
Outbound, our id with a row becomes Bambu's; inbound, Bambu's id with a row becomes ours.
Everything else is forwarded untouched — an `OF` id with no row, a Bambu id for a product we do
not ship, a `P`-hex user id, `"null"`, an empty string. Translation is confined to the
boundary: nothing between the boundaries ever holds a Bambu id.
Translating one value is a capability of the printer agent: `IPrinterAgent` declares
`to_orca_filament_id` and `from_orca_filament_id` returning their argument, and `BBLPrinterAgent`
overrides them with Bambu's map, so an agent whose printers already speak our ids inherits the
identity default and translates nothing. `NetworkAgent` forwards both to the live agent, so the
comparison sites below reach them through `wxGetApp().getAgent()` and leave an id untranslated
while no agent is live. Whole documents are Bambu's business alone:
`BBLPrinterAgent::to_orca_payload` and `from_orca_payload` rewrite every string under
`tray_info_idx`, `filament_id` or `filamentId` at any depth; text that does not parse, or carries
none of those keys, comes back unchanged. The map is loaded once, lazily; a missing or malformed
file degrades to identity with a log line rather than failing.
| Boundary | Where it translates |
| --- | --- |
| Everything the agent sends | `BBLPrinterAgent::send_message` and `send_message_to_printer`, plus `PrintParams::ams_mapping_info` in `dispatch_start` — the funnel all five `start_*` calls share |
| Everything the agent receives | `set_on_message_fn` and `set_on_local_message_fn` wrap their callback, so `MachineObject::parse_json` and everything downstream see our ids only |
| 3mf export | `Plater::export_3mf` writes Bambu's ids into `slice_info.config`, gated on `preset_bundle.is_bbl_vendor()` — the printer reads that file and knows only its own catalog, and no other vendor's export is affected. The CLI has its own writer in `OrcaSlicer.cpp`; it does the same, gated on the `printer_model` prefix that already decides `Print::is_BBL_printer()` for that run |
| Project ingest | `Plater::priv::load_files` reverse-maps the project's `filament_ids` before the bundle ingests them, so a project saved by an older Orca or by BambuStudio still resolves the same presets |
| Prints from the printer's SD card | `SelectMachineDialog::update_print_required_data` reverse-maps each plate's slice-info ids as it adopts the plates, so the AMS mapping dialog pairs them with trays |
| Bambu-specific comparisons | `CalibUtils.cpp`, `DeviceManager.cpp`, `DeviceCore/DevFilaSystem.cpp`, `DeviceCore/DevFilaBlackList.cpp`, `SelectMachine.cpp`, `AMSDryControl.cpp`, `AMSMaterialsSetting.cpp`, `PresetComboBoxes.cpp`, `ColorDecomposeSupport.cpp` |
That last row is the rule to follow when a new Bambu-specific behaviour is added: **translate
the value you are about to compare, never the table you compare it against.** The shipped data
those sites read is Bambu's and stays verbatim — `white_fila_ids` in
`resources/printers/filaments_blacklist.json`, the calibration id lists in
`resources/printers/<model>.json`, `fila_id` in
`resources/profiles/BBL/filament/filaments_color_codes.json`.
`tests/slic3rutils/test_bambu_filament_ids.cpp` covers the lookups, the payload rewrite and the
Bambu-specific rules. `orcaslicer_discover_tests` registers a Catch2 tag as a CTest **label**,
not as part of the test name, so `-R` matches nothing here and the filter is `-L`:
```bash
ctest --test-dir <build dir>/tests/slic3rutils -L BambuFilamentIds
```
### Three places the map deliberately does not reach
The map and its lookups live in the GUI library, which libslic3r cannot link against and which a
GUI-less build does not link at all. Three consequences are known and documented; none is worth
pulling the map down into libslic3r for.
- **The support display type in `PrintConfig.cpp`.** `DynamicPrintConfig::get_filament_type`
picks `PLA-S` / `Sup.PLA` and `PA-S` / `Sup.PA` for a support filament by testing
`filament_id` against `GFS00` and `GFS01`, and otherwise falls back on `filament_type` — a
fallback that returns those same two pairs for `"PLA"` and `"PA"`. Bambu Support W inherits
`fdm_filament_pla` and Bambu Support G inherits `fdm_filament_pa`, so with their `OF` ids the
fallback produces exactly what the id branches produced. (The only config that ever carries a
singular `filament_id` key is the AMS tray config built in `Plater.cpp`, and that one never
reaches this function.) These two lines are the only mention of a Bambu id anywhere in
libslic3r, and they need no change.
- **Config imports.** `PresetBundle::import_presets` (File ▸ Import ▸ Import Configs, for
`.json` / `.zip` / `.orca_filament` / `.orca_printer` / `.orca_bundle`) and
`PresetBundle::load_config_file` (the CLI's `--load-settings` of a G-code file with an
embedded config) both parse inside libslic3r, out of the GUI's reach, so a Bambu id carried
in such a file lands on the imported preset untranslated. The effect is bounded: that preset
does not auto-match an AMS tray while the stale id is live, and the id does not survive
being saved — `Preset::save` writes a `filament_id` key only for a preset whose `inherits` is
empty, and on the next load an inheriting preset takes its parent's id. A known gap, and not
a regression: nothing forwarded a stale id before either.
- **A build configured without the GUI.** `target_link_libraries(OrcaSlicer libslic3r_gui)` sits
inside `if (SLIC3R_GUI)` in `src/CMakeLists.txt`, so the lookups are not linkable when the GUI
is off. The CLI's 3mf writer in `src/OrcaSlicer.cpp` therefore guards its translation with
`#ifdef SLIC3R_GUI`, and a 3mf that such a build slices for a Bambu printer carries our `OF`
ids in `slice_info.config` rather than Bambu's. Every shipped build enables the GUI, so this
reaches only a purpose-built GUI-less binary.
One more thing worth recording before it is rediscovered:
`SyncAmsInfoDialog::update_print_required_data` is a structural twin of the SD-card function
above and carries no translation. It has no callers today and its plate list is only ever read
for `printer_model_id`, so it is not a live gap — but wiring it up without adding the reverse
map would silently reproduce the bug.
## How CI enforces this
Profile CI (`check_profiles.yml`) runs `check_filament_ids()` tree-wide via
`scripts/orca_extra_profile_check.py`. Its ground truth is
**`scripts/filament_id_snapshot.json` — the sanctioned state**: the id state derived from the
tree must equal the snapshot exactly, in both directions. Any change to the id landscape
therefore surfaces as a diff to that file, and **that snapshot diff is what maintainers review
and gate in a PR**. Never edit the snapshot by hand — `--update-snapshot` regenerates it
deterministically (running it twice changes nothing). The snapshot holds one map, `ids`: each
entry is the product the id is minted from (`filament_vendor`, `filament_type`, `name`) and the
`filaments` claiming it (`Vendor/Filament`), and it sanctions *state*, never exceptions: no check
consults it to excuse a preset from a rule, and there is no grandfather list of any kind.
The checks, in brief:
- **Format** — every id occurring in the tree is `OF` + 6 base62 chars. No exceptions: not a
snapshot entry, not BBL.
- **Snapshot equality** — tree claims == snapshot claims **and** each id's declared triple ==
its snapshot entry, both directions: any `filament_vendor`/`filament_type`/name change
surfaces as a snapshot diff.
- **Identity** — the id is a function of the triple alone. A declared `OF*` id must equal the
one id its declarer's own triple mints, with no second acceptable value; the id an
instantiated preset *inherits* must equal the mint of *its* own triple, however it inherits
it (a root, a real filament, a library preset — structure rule 1); and every instantiated
system filament must resolve an effective id at all (recall: an id-less one is a hard load
error in C++ that discards the whole vendor bundle); and no two products mint one id (a
base62 collision, resolved by renaming one of them). The errors print the expected id.
- **Reserved namespaces** — `GF*`, `QD_*`, `P<7-hex>` or `"null"` claimed by any vendor,
BBL and Qidi included.
- **Triple integrity** — every declarer must resolve a non-empty `filament_vendor` and
`filament_type` (generics use `"Generic"`), and all declarers of one filament within a
bundle must agree on the triple.
- **Bambu catalog map** — `resources/printers/bambu_filament_ids.json` parses, carries its
`source` / `bambustudio_commit` / `generated` header, keys only `OF`-format ids, maps each
Bambu id at most once, and agrees with the tree on the triple of every row whose key the
tree claims. See [The Bambu catalog map](#the-bambu-catalog-map); the remedy is always to
regenerate, never to hand-edit.
A profile that declares a **reserved-namespace** id — `GF*`, `QD_*` or `P<7-hex>`, whatever
its vendor — cannot pass the format check, so `--update-snapshot` refuses to sanction it
rather than hide the mistake until CI. For a Bambu-cataloged product, the catalog map is where
the correspondence belongs. Any other new sharing via a *declared* id is caught by the identity
check; sharing through inheritance carries no declaration to check and surfaces only as a new
claim in the snapshot diff — which is exactly why that diff is the gate.
`orca_extra_profile_check.py` separately holds every declared id to the AMS 8-character limit,
tree-wide and for every vendor alike, scoped to the presets a vendor's index actually
references (a file the index never loads cannot break AMS matching).
Complementing the Python checks, CI also runs the C++ profile validator with `-f`
(`check_filament_subtypes`): it loads the bundle exactly as the app does and flags any printer
for which two or more compatible filament presets share one `filament_id` — the runtime-shaped
ambiguity check behind structure rule 3.
## FAQ
- **A new color of an existing product?** Never a new id — colors are not filaments.
- **A second diameter (1.75 mm and 2.85 mm) of the same product?** A sibling filament with its
own id: two diameters are separately selectable spool products.
- **A high-speed tune of an existing material for another printer model?** Same filament:
keep the base name and inherit its root; no id key needed.
- **A tuned generic ("our profile for Generic PLA")?** Inherit `Generic PLA @System`, keep the
`Generic PLA` base name, set `compatible_printers`; no id key needed.
- **A branded filament that borrows a generic's settings?** Fine — inherit `Generic X @System`
(or any real filament) for the settings and declare the id of your own filament; run
`python scripts/orca_id_tool.py --generate` to mint it. Inheritance never changes the id.
- **I need to fix a filament's `filament_vendor` or `filament_type`.** Fix the config, run
`--generate --vendor <Vendor>` (preview with `--dry-run`), then `--update-snapshot`, and commit
the profile and snapshot diffs together. The id re-derives from the corrected identity, and
nothing forwards the old value, so a tray or record still holding it falls back to matching by
filament type.
- **I need to rename a filament.** Rename the presets (adding `renamed_from`, which keeps the
preset *name* resolving), then `--generate --vendor <Vendor>` (preview with `--dry-run`), then
`--update-snapshot`. The id follows the new filament name; as with any identity fix, the old id
is not forwarded.
- **Can I reuse a `QD_*` id for a Qidi profile?** No — nobody can. It is the device protocol's
own id space: the box composes those values at runtime and no preset carries one. Author
Qidi filaments like any other vendor's.
- **CI says my filament needs an id.** Run `python scripts/orca_id_tool.py --generate`, then
`--update-snapshot`, and commit both diffs. Do not type an id by hand.
For general profile authoring, see the profile development guide on the
[OrcaSlicer wiki](https://www.orcaslicer.com/wiki).

View File

@@ -1,111 +0,0 @@
# Move `wxInspectable` into `DPIAware` — Implementation Plan
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** Move `wxInspector::wxInspectable` from individual leaf classes into the common `DPIAware<P>` template so every DPIAware widget is automatically inspectable and gets the inspector keyboard shortcut.
**Architecture:** `DPIAware<P>` gains `wxInspector::wxInspectable` as a second base class and calls `SetupInspectorAccelerator(this)` in its constructor. `DPIDialog` and `MainFrame` drop their now-redundant `wxInspectable` inheritance and `SetupInspectorAccelerator` calls.
**Tech Stack:** C++17, wxWidgets, wxInspector
## Global Constraints
- Build with `D:\VisualStudio\2026\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe`
- Use `--config RelWithDebInfo` for all builds
- Cross-platform: must compile on Windows, macOS, and Linux
- Match existing code style: PascalCase classes, `#pragma once`
- Do NOT commit files under `.superpowers/`
- Do NOT commit `task.md`
---
### Task 1: Move `wxInspectable` and `SetupInspectorAccelerator` into `DPIAware<P>`
**Files:**
- Modify: `src/slic3r/GUI/GUI_Utils.hpp:92` (DPIAware template — add wxInspectable base + SetupInspectorAccelerator call)
- Modify: `src/slic3r/GUI/GUI_Utils.hpp:276` (DPIDialog — drop wxInspectable + SetupInspectorAccelerator)
- Modify: `src/slic3r/GUI/MainFrame.hpp:96` (MainFrame — drop wxInspectable)
- Modify: `src/slic3r/GUI/MainFrame.cpp:304` (MainFrame constructor — drop SetupInspectorAccelerator)
**Interfaces:**
- Consumes: Nothing (standalone refactor)
- Produces: All DPIAware widgets automatically inherit `wxInspector::wxInspectable` and get Ctrl+Shift+I accelerator
- [ ] **Step 1: Add `wxInspectable` to `DPIAware<P>` and call `SetupInspectorAccelerator`**
In `src/slic3r/GUI/GUI_Utils.hpp`, line 92, change the base class:
```cpp
// Before:
template<class P> class DPIAware : public P
// After:
template<class P> class DPIAware : public P, public wxInspector::wxInspectable
```
In the constructor body of `DPIAware<P>`, after `this->CenterOnParent();` (currently line 110), add:
```cpp
SetupInspectorAccelerator(this);
```
(`<wx/inspector/inspector.h>` is already included at line 23.)
- [ ] **Step 2: Remove redundant `wxInspectable` and `SetupInspectorAccelerator` from `DPIDialog`**
In `src/slic3r/GUI/GUI_Utils.hpp`, line 276, change:
```cpp
// Before:
class DPIDialog : public DPIAware<wxDialog>, public wxInspector::wxInspectable
// After:
class DPIDialog : public DPIAware<wxDialog>
```
In the `DPIDialog` constructor body, remove the `SetupInspectorAccelerator(this);` line (currently line 286). The rest of the constructor stays.
- [ ] **Step 3: Remove redundant `wxInspectable` from `MainFrame`**
In `src/slic3r/GUI/MainFrame.hpp`, line 96, change:
```cpp
// Before:
class MainFrame : public DPIFrame, public wxInspector::wxInspectable
// After:
class MainFrame : public DPIFrame
```
`MainFrame` now gets `wxInspectable` through `DPIFrame``DPIAware<wxFrame>`.
- [ ] **Step 4: Remove redundant `SetupInspectorAccelerator` from `MainFrame` constructor**
In `src/slic3r/GUI/MainFrame.cpp`, line 304, remove the line:
```cpp
SetupInspectorAccelerator(this);
```
It is now called automatically by the `DPIAware<wxFrame>` constructor.
- [ ] **Step 5: Build to verify compilation**
```powershell
$cmakePath = "D:\VisualStudio\2026\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe"
& $cmakePath --build . --config RelWithDebInfo --target ALL_BUILD -- -m
```
Expected: Build succeeds with zero new errors or warnings.
- [ ] **Step 6: Commit**
```bash
git add src/slic3r/GUI/GUI_Utils.hpp src/slic3r/GUI/MainFrame.hpp src/slic3r/GUI/MainFrame.cpp
git commit -m "refactor: move wxInspectable and SetupInspectorAccelerator into DPIAware
DPIAware<P> now inherits wxInspector::wxInspectable and calls
SetupInspectorAccelerator in its constructor, making all DPIAware
widgets automatically appear in the inspector tree with the
Ctrl+Shift+I shortcut. Remove redundant wxInspectable inheritance
and SetupInspectorAccelerator calls from DPIDialog and MainFrame.
Co-Authored-By: Claude <noreply@anthropic.com>"
```

View File

@@ -1,753 +0,0 @@
# wxInspector Plugins for OrcaSlicer — Implementation Plan
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** Build two wxInspector plugins (DPIAware + CustomWidgets) that expose OrcaSlicer custom control properties in the inspector's property grid.
**Architecture:** Two plugins in a shared folder under `src/slic3r/Utils/wxInspectorPlugins/`. DPIAwarePlugin uses `dynamic_cast<DPIFrame*>/<DPIDialog*>` for detection; CustomWidgetsPlugin uses per-type `dynamic_cast`. Both registered as static singletons via a single inline function in `Registration.hpp`, called from `MainFrame` constructor.
**Tech Stack:** C++17, wxWidgets, wxInspector plugin API (`wx/inspector/plugin.h`, `wx/inspector/inspector.h`), OrcaSlicer custom widget headers
## Global Constraints
- Plugins placed under `src/slic3r/Utils/wxInspectorPlugins/`
- Build with `D:\VisualStudio\2026\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe`
- Minimal source changes: only trivial (one-line) getters/setters added to existing classes
- Cross-platform: must compile on Windows, macOS, and Linux
- Match existing code style: PascalCase classes, snake_case functions, `#pragma once`
---
### Task 1: Add getters/setters to existing Orca widget headers
**Files:**
- Modify: `src/slic3r/GUI/GUI_Utils.hpp` (DPIAware template — add 4 methods)
- Modify: `src/slic3r/GUI/Widgets/Button.hpp` (add 3 getters)
- Modify: `src/slic3r/GUI/Widgets/CheckBox.hpp` (add 1 getter)
- Modify: `src/slic3r/GUI/Widgets/TextInput.hpp` (add 1 getter)
- Modify: `src/slic3r/GUI/Widgets/LabeledStaticBox.hpp` (add 4 getter declarations)
- Modify: `src/slic3r/GUI/Widgets/LabeledStaticBox.cpp` (add 4 getter implementations)
**Interfaces:**
- Consumes: Nothing (prerequisite for all other tasks)
- Produces:
- `DPIAware<P>::set_scale_factor(float)`, `DPIAware<P>::set_prev_scale_factor(float)`, `DPIAware<P>::set_em_unit(int)`, `DPIAware<P>::force_rescale() const`
- `Button::GetStyle()`, `Button::GetType()`, `Button::IsSelected()`
- `CheckBox::IsHalfChecked()`
- `TextInput::GetCornerRadius()`
- `LabeledStaticBox::GetCornerRadius()`, `LabeledStaticBox::GetBorderWidth()`, `LabeledStaticBox::GetBorderColor()`, `LabeledStaticBox::GetScale()`
- [ ] **Step 1: Add DPIAware setters/getter in GUI_Utils.hpp**
After line 184 (`float prev_scale_factor() const { return m_prev_scale_factor; }`), add:
```cpp
void set_scale_factor(float v) { m_scale_factor = v; }
void set_prev_scale_factor(float v) { m_prev_scale_factor = v; }
void set_em_unit(int v) { m_em_unit = v; }
bool force_rescale() const { return m_force_rescale; }
```
- [ ] **Step 2: Add Button getters in Button.hpp**
After line 79 (`void SetSelected(bool selected = true) { m_selected = selected; }`), add:
```cpp
ButtonStyle GetStyle() const { return m_style; }
ButtonType GetType() const { return m_type; }
bool IsSelected() const { return m_selected; }
```
- [ ] **Step 3: Add CheckBox getter in CheckBox.hpp**
After line 16 (`void SetHalfChecked(bool value = true);`), add:
```cpp
bool IsHalfChecked() const { return m_half_checked; }
```
- [ ] **Step 4: Add TextInput getter in TextInput.hpp**
After line 44 (`void SetCornerRadius(double radius);`), add:
```cpp
int GetCornerRadius() const { return static_cast<int>(radius); }
```
(Note: `radius` is inherited from `StaticBox` which has it as a protected `double` member.)
- [ ] **Step 5: Add LabeledStaticBox getter declarations in LabeledStaticBox.hpp**
After line 46 (`bool Enable(bool enable) override;`), add:
```cpp
int GetCornerRadius() const { return m_radius; }
int GetBorderWidth() const { return m_border_width; }
StateColor GetBorderColor() const { return border_color; }
float GetScale() const { return m_scale; }
```
(Note: all of `m_radius`, `m_border_width`, `border_color`, `m_scale` are protected members, accessible to inline methods.)
- [ ] **Step 6: Commit**
```bash
git add src/slic3r/GUI/GUI_Utils.hpp src/slic3r/GUI/Widgets/Button.hpp src/slic3r/GUI/Widgets/CheckBox.hpp src/slic3r/GUI/Widgets/TextInput.hpp src/slic3r/GUI/Widgets/LabeledStaticBox.hpp
git commit -m "feat: add getters/setters for wxInspector plugin access
Add minimal public accessors to DPIAware (set_scale_factor,
set_prev_scale_factor, set_em_unit, force_rescale), Button
(GetStyle, GetType, IsSelected), CheckBox (IsHalfChecked),
TextInput (GetCornerRadius), and LabeledStaticBox
(GetCornerRadius, GetBorderWidth, GetBorderColor, GetScale)."
```
---
### Task 2: Create Registration helper header
**Files:**
- Create: `src/slic3r/Utils/wxInspectorPlugins/Registration.hpp`
**Interfaces:**
- Consumes: Nothing (forward-declares plugin classes)
- Produces: `RegisterOrcaInspectorPlugins()`
- [ ] **Step 1: Create directory**
```bash
mkdir -p src/slic3r/Utils/wxInspectorPlugins
```
- [ ] **Step 2: Write Registration.hpp**
```cpp
#pragma once
namespace wxInspector {
class wxInspectorPlugin;
void RegisterPlugin(wxInspectorPlugin* plugin);
}
// Forward declare our plugins
class DPIAwarePlugin;
class CustomWidgetsPlugin;
inline void RegisterOrcaInspectorPlugins()
{
static DPIAwarePlugin dpiaware;
static CustomWidgetsPlugin customWidgets;
wxInspector::RegisterPlugin(&dpiaware);
wxInspector::RegisterPlugin(&customWidgets);
}
```
- [ ] **Step 3: Commit**
```bash
git add src/slic3r/Utils/wxInspectorPlugins/Registration.hpp
git commit -m "feat: add wxInspector plugin registration helper
Add RegisterOrcaInspectorPlugins() inline function that creates
and registers the DPIAwarePlugin and CustomWidgetsPlugin as
static instances (matching wxInspector's built-in pattern)."
```
---
### Task 3: Create DPIAwarePlugin
**Files:**
- Create: `src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.hpp`
- Create: `src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.cpp`
**Interfaces:**
- Consumes: Task 1 (DPIAware getters/setters), Task 2 (registration pattern)
- Produces: `class DPIAwarePlugin : public wxInspector::wxInspectorPlugin`
- [ ] **Step 1: Write DPIAwarePlugin.hpp**
```cpp
#pragma once
#include <wx/inspector/plugin.h>
class DPIAwarePlugin : public wxInspector::wxInspectorPlugin
{
public:
wxString GetName() const override;
bool CanProvideProperties(wxClassInfo* info) override;
wxVector<wxInspector::PropertyDef> GetProperties(
wxInspector::InspectableObject& obj) override;
};
```
- [ ] **Step 2: Write DPIAwarePlugin.cpp**
```cpp
#include "DPIAwarePlugin.hpp"
#include "slic3r/GUI/GUI_Utils.hpp" // DPIFrame, DPIDialog, DPIAware<P>
#include <wx/window.h>
namespace {
template<typename T>
void addDPIProps(T* dpi, wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
props.push_back({"Scale Factor", "DPI Scaling", PropertyType::String,
wxString::Format("%.2f", dpi->scale_factor()), false, {},
[dpi]() { return wxString::Format("%.2f", dpi->scale_factor()); },
[dpi](const wxString& v) {
double val;
if (wxSscanf(v, "%lf", &val) != 1) return false;
dpi->set_scale_factor((float) val);
return true;
}});
props.push_back({"Prev Scale Factor", "DPI Scaling", PropertyType::String,
wxString::Format("%.2f", dpi->prev_scale_factor()), false, {},
[dpi]() { return wxString::Format("%.2f", dpi->prev_scale_factor()); },
[dpi](const wxString& v) {
double val;
if (wxSscanf(v, "%lf", &val) != 1) return false;
dpi->set_prev_scale_factor((float) val);
return true;
}});
props.push_back({"EM Unit", "DPI Scaling", PropertyType::Integer,
wxString::Format("%d", dpi->em_unit()), false, {},
[dpi]() { return wxString::Format("%d", dpi->em_unit()); },
[dpi](const wxString& v) {
long val;
if (!v.ToLong(&val)) return false;
dpi->set_em_unit((int) val);
return true;
}});
props.push_back({"Normal Font", "DPI Scaling", PropertyType::ReadOnly,
dpi->normal_font().GetNativeFontInfoDesc(), true, {},
[dpi]() { return dpi->normal_font().GetNativeFontInfoDesc(); },
nullptr});
props.push_back({"Force Rescale", "DPI Scaling", PropertyType::Boolean,
dpi->force_rescale() ? "true" : "false", true, {},
[dpi]() { return dpi->force_rescale() ? "true" : "false"; },
nullptr});
}
} // anonymous namespace
wxString DPIAwarePlugin::GetName() const
{
return "OrcaDPIAware";
}
bool DPIAwarePlugin::CanProvideProperties(wxClassInfo* info)
{
return info->IsKindOf(CLASSINFO(wxWindow));
}
wxVector<wxInspector::PropertyDef> DPIAwarePlugin::GetProperties(
wxInspector::InspectableObject& obj)
{
wxVector<wxInspector::PropertyDef> props;
wxWindow* win = obj.AsWindow();
if (!win) return props;
if (auto* frame = dynamic_cast<DPIFrame*>(win)) {
addDPIProps(frame, props);
} else if (auto* dlg = dynamic_cast<DPIDialog*>(win)) {
addDPIProps(dlg, props);
}
return props;
}
```
- [ ] **Step 3: Commit**
```bash
git add src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.hpp src/slic3r/Utils/wxInspectorPlugins/DPIAwarePlugin.cpp
git commit -m "feat: add DPIAware wxInspector plugin
Exposes DPI scaling properties (scale_factor, prev_scale_factor,
em_unit, normal_font, force_rescale) on DPIFrame and DPIDialog
widgets. Uses dynamic_cast for detection and a template helper
to capture the correct static type for lambda accessors."
```
---
### Task 4: Create CustomWidgetsPlugin
**Files:**
- Create: `src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp`
- Create: `src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp`
**Interfaces:**
- Consumes: Task 1 (all widget getters), Task 2 (registration pattern)
- Produces: `class CustomWidgetsPlugin : public wxInspector::wxInspectorPlugin`
- [ ] **Step 1: Write CustomWidgetsPlugin.hpp**
```cpp
#pragma once
#include <wx/inspector/plugin.h>
class CustomWidgetsPlugin : public wxInspector::wxInspectorPlugin
{
public:
wxString GetName() const override;
bool CanProvideProperties(wxClassInfo* info) override;
wxVector<wxInspector::PropertyDef> GetProperties(
wxInspector::InspectableObject& obj) override;
private:
void addButtonProps(class Button* btn,
wxVector<wxInspector::PropertyDef>& props);
void addCheckBoxProps(class CheckBox* cb,
wxVector<wxInspector::PropertyDef>& props);
void addTextInputProps(class TextInput* ti,
wxVector<wxInspector::PropertyDef>& props);
void addSwitchButtonProps(class SwitchButton* sb,
wxVector<wxInspector::PropertyDef>& props);
void addProgressBarProps(class ProgressBar* pb,
wxVector<wxInspector::PropertyDef>& props);
void addLabelProps(class Label* lbl,
wxVector<wxInspector::PropertyDef>& props);
void addLabeledStaticBoxProps(class LabeledStaticBox* lsb,
wxVector<wxInspector::PropertyDef>& props);
};
```
- [ ] **Step 2: Write CustomWidgetsPlugin.cpp — includes and GetName/CanProvideProperties**
```cpp
#include "CustomWidgetsPlugin.hpp"
#include "slic3r/GUI/Widgets/Button.hpp"
#include "slic3r/GUI/Widgets/CheckBox.hpp"
#include "slic3r/GUI/Widgets/TextInput.hpp"
#include "slic3r/GUI/Widgets/SwitchButton.hpp"
#include "slic3r/GUI/Widgets/ProgressBar.hpp"
#include "slic3r/GUI/Widgets/Label.hpp"
#include "slic3r/GUI/Widgets/LabeledStaticBox.hpp"
#include <wx/window.h>
#include <wx/tglbtn.h>
wxString CustomWidgetsPlugin::GetName() const
{
return "OrcaCustomWidgets";
}
bool CustomWidgetsPlugin::CanProvideProperties(wxClassInfo* info)
{
return info->IsKindOf(CLASSINFO(wxWindow));
}
wxVector<wxInspector::PropertyDef> CustomWidgetsPlugin::GetProperties(
wxInspector::InspectableObject& obj)
{
wxVector<wxInspector::PropertyDef> props;
wxWindow* win = obj.AsWindow();
if (!win) return props;
if (auto* btn = dynamic_cast<Button*>(win))
addButtonProps(btn, props);
if (auto* cb = dynamic_cast<CheckBox*>(win))
addCheckBoxProps(cb, props);
if (auto* ti = dynamic_cast<TextInput*>(win))
addTextInputProps(ti, props);
if (auto* sb = dynamic_cast<SwitchButton*>(win))
addSwitchButtonProps(sb, props);
if (auto* pb = dynamic_cast<ProgressBar*>(win))
addProgressBarProps(pb, props);
if (auto* lbl = dynamic_cast<Label*>(win))
addLabelProps(lbl, props);
if (auto* lsb = dynamic_cast<LabeledStaticBox*>(win))
addLabeledStaticBoxProps(lsb, props);
return props;
}
```
- [ ] **Step 3: Write CustomWidgetsPlugin.cpp — addButtonProps**
```cpp
void CustomWidgetsPlugin::addButtonProps(Button* btn,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
wxVector<wxString> styleChoices;
styleChoices.push_back("Regular");
styleChoices.push_back("Confirm");
styleChoices.push_back("Alert");
styleChoices.push_back("Disabled");
auto styleToStr = [](ButtonStyle s) -> wxString {
switch (s) {
case ButtonStyle::Regular: return "Regular";
case ButtonStyle::Confirm: return "Confirm";
case ButtonStyle::Alert: return "Alert";
case ButtonStyle::Disabled: return "Disabled";
}
return "Regular";
};
props.push_back({"Button Style", "Orca Button", PropertyType::Choice,
styleToStr(btn->GetStyle()), false, styleChoices,
[btn, styleToStr]() { return styleToStr(btn->GetStyle()); },
[btn](const wxString& v) {
ButtonStyle s = ButtonStyle::Regular;
if (v == "Confirm") s = ButtonStyle::Confirm;
else if (v == "Alert") s = ButtonStyle::Alert;
else if (v == "Disabled") s = ButtonStyle::Disabled;
btn->SetStyle(s, btn->GetType());
return true;
}});
wxVector<wxString> typeChoices;
typeChoices.push_back("Compact");
typeChoices.push_back("Window");
typeChoices.push_back("Choice");
typeChoices.push_back("Parameter");
typeChoices.push_back("Icon");
typeChoices.push_back("Expanded");
auto typeToStr = [](ButtonType t) -> wxString {
switch (t) {
case ButtonType::Compact: return "Compact";
case ButtonType::Window: return "Window";
case ButtonType::Choice: return "Choice";
case ButtonType::Parameter: return "Parameter";
case ButtonType::Icon: return "Icon";
case ButtonType::Expanded: return "Expanded";
}
return "Compact";
};
props.push_back({"Button Type", "Orca Button", PropertyType::Choice,
typeToStr(btn->GetType()), false, typeChoices,
[btn, typeToStr]() { return typeToStr(btn->GetType()); },
[btn](const wxString& v) {
ButtonType t = ButtonType::Compact;
if (v == "Window") t = ButtonType::Window;
else if (v == "Choice") t = ButtonType::Choice;
else if (v == "Parameter") t = ButtonType::Parameter;
else if (v == "Icon") t = ButtonType::Icon;
else if (v == "Expanded") t = ButtonType::Expanded;
btn->SetStyle(btn->GetStyle(), t);
return true;
}});
props.push_back({"Selected", "Orca Button", PropertyType::Boolean,
btn->IsSelected() ? "true" : "false", false, {},
[btn]() { return btn->IsSelected() ? "true" : "false"; },
[btn](const wxString& v) {
btn->SetSelected(v == "true");
btn->Refresh();
return true;
}});
}
```
- [ ] **Step 4: Write CustomWidgetsPlugin.cpp — addCheckBoxProps**
```cpp
void CustomWidgetsPlugin::addCheckBoxProps(CheckBox* cb,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
props.push_back({"Half Checked", "Orca CheckBox", PropertyType::Boolean,
cb->IsHalfChecked() ? "true" : "false", false, {},
[cb]() { return cb->IsHalfChecked() ? "true" : "false"; },
[cb](const wxString& v) {
cb->SetHalfChecked(v == "true");
return true;
}});
}
```
- [ ] **Step 5: Write CustomWidgetsPlugin.cpp — addTextInputProps**
```cpp
void CustomWidgetsPlugin::addTextInputProps(TextInput* ti,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
props.push_back({"Label", "Orca TextInput", PropertyType::String,
ti->GetLabel(), false, {},
[ti]() { return ti->GetLabel(); },
[ti](const wxString& v) { ti->SetLabel(v); return true; }});
props.push_back({"Text Value", "Orca TextInput", PropertyType::String,
ti->GetTextCtrl()->GetValue(), false, {},
[ti]() { return ti->GetTextCtrl()->GetValue(); },
[ti](const wxString& v) { ti->GetTextCtrl()->SetValue(v); return true; }});
props.push_back({"Corner Radius", "Orca TextInput", PropertyType::Integer,
wxString::Format("%d", ti->GetCornerRadius()), false, {},
[ti]() { return wxString::Format("%d", ti->GetCornerRadius()); },
[ti](const wxString& v) {
long val;
if (!v.ToLong(&val)) return false;
ti->SetCornerRadius((double) val);
ti->Refresh();
return true;
}});
}
```
- [ ] **Step 6: Write CustomWidgetsPlugin.cpp — addSwitchButtonProps**
```cpp
void CustomWidgetsPlugin::addSwitchButtonProps(SwitchButton* sb,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
props.push_back({"Value", "Orca SwitchButton", PropertyType::Boolean,
sb->GetValue() ? "true" : "false", false, {},
[sb]() { return sb->GetValue() ? "true" : "false"; },
[sb](const wxString& v) {
sb->SetValue(v == "true");
return true;
}});
}
```
(Note: `GetValue()` and `SetValue()` are inherited from `wxBitmapToggleButton``wxToggleButton`.)
- [ ] **Step 7: Write CustomWidgetsPlugin.cpp — addProgressBarProps**
```cpp
void CustomWidgetsPlugin::addProgressBarProps(ProgressBar* pb,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
props.push_back({"Proportion", "Orca ProgressBar", PropertyType::String,
wxString::Format("%.2f", pb->m_proportion), false, {},
[pb]() { return wxString::Format("%.2f", pb->m_proportion); },
[pb](const wxString& v) {
double val;
if (wxSscanf(v, "%lf", &val) != 1) return false;
pb->m_proportion = val;
pb->Refresh();
return true;
}});
props.push_back({"Show Number", "Orca ProgressBar", PropertyType::Boolean,
pb->m_shownumber ? "true" : "false", false, {},
[pb]() { return pb->m_shownumber ? "true" : "false"; },
[pb](const wxString& v) {
pb->m_shownumber = (v == "true");
pb->Refresh();
return true;
}});
}
```
(Note: `m_proportion` and `m_shownumber` are public members on `ProgressBar`.)
- [ ] **Step 8: Write CustomWidgetsPlugin.cpp — addLabelProps**
```cpp
void CustomWidgetsPlugin::addLabelProps(Label* lbl,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
bool isHyperlink = (lbl->GetWindowStyleFlag() & 0x0020) != 0; // LB_HYPERLINK
props.push_back({"Is Hyperlink", "Orca Label", PropertyType::Boolean,
isHyperlink ? "true" : "false", true, {},
[lbl]() {
return (lbl->GetWindowStyleFlag() & 0x0020) ? "true" : "false";
},
nullptr});
props.push_back({"Font Point Size", "Orca Label", PropertyType::ReadOnly,
wxString::Format("%d", lbl->GetFont().GetPointSize()), true, {},
[lbl]() {
return wxString::Format("%d", lbl->GetFont().GetPointSize());
},
nullptr});
}
```
- [ ] **Step 9: Write CustomWidgetsPlugin.cpp — addLabeledStaticBoxProps**
```cpp
void CustomWidgetsPlugin::addLabeledStaticBoxProps(LabeledStaticBox* lsb,
wxVector<wxInspector::PropertyDef>& props)
{
using namespace wxInspector;
props.push_back({"Corner Radius", "LabeledStaticBox", PropertyType::Integer,
wxString::Format("%d", lsb->GetCornerRadius()), false, {},
[lsb]() { return wxString::Format("%d", lsb->GetCornerRadius()); },
[lsb](const wxString& v) {
long val;
if (!v.ToLong(&val)) return false;
lsb->SetCornerRadius((int) val);
return true;
}});
props.push_back({"Border Width", "LabeledStaticBox", PropertyType::Integer,
wxString::Format("%d", lsb->GetBorderWidth()), false, {},
[lsb]() { return wxString::Format("%d", lsb->GetBorderWidth()); },
[lsb](const wxString& v) {
long val;
if (!v.ToLong(&val)) return false;
lsb->SetBorderWidth((int) val);
return true;
}});
// Border Color: display as hex string
wxColour bc = lsb->GetBorderColor().colorForStates(0);
props.push_back({"Border Color", "LabeledStaticBox", PropertyType::String,
bc.GetAsString(wxC2S_HTML_SYNTAX), false, {},
[lsb]() {
return lsb->GetBorderColor()
.colorForStates(0)
.GetAsString(wxC2S_HTML_SYNTAX);
},
[lsb](const wxString& v) {
wxColour c(v);
if (!c.IsOk()) return false;
lsb->SetBorderColor(StateColor(c));
return true;
}});
props.push_back({"Scale", "LabeledStaticBox", PropertyType::ReadOnly,
wxString::Format("%.2f", lsb->GetScale()), true, {},
[lsb]() { return wxString::Format("%.2f", lsb->GetScale()); },
nullptr});
}
```
- [ ] **Step 10: Commit**
```bash
git add src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp src/slic3r/Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp
git commit -m "feat: add OrcaCustomWidgets wxInspector plugin
Exposes Orca-specific properties on 7 widget types:
- Button: Style, Type, Selected
- CheckBox: Half Checked
- TextInput: Label, Text Value, Corner Radius
- SwitchButton: Value
- ProgressBar: Proportion, Show Number
- Label: Is Hyperlink, Font Point Size
- LabeledStaticBox: Corner Radius, Border Width, Border Color, Scale
Each widget type uses dynamic_cast for safe detection."
```
---
### Task 5: Wire plugins into MainFrame and CMakeLists
**Files:**
- Modify: `src/slic3r/GUI/MainFrame.cpp` (add include + registration call)
- Modify: `src/slic3r/CMakeLists.txt` (add 4 source files)
**Interfaces:**
- Consumes: Tasks 1-4 (all plugins and registration helper)
- Produces: Registered plugins available at runtime, buildable project
- [ ] **Step 1: Add include in MainFrame.cpp**
After the existing includes (around line 30, near the other Utils includes), add:
```cpp
#include "slic3r/Utils/wxInspectorPlugins/Registration.hpp"
```
- [ ] **Step 2: Add registration call in MainFrame constructor**
After `SetupInspectorAccelerator(this);` (currently line ~303), add:
```cpp
RegisterOrcaInspectorPlugins();
```
- [ ] **Step 3: Add source files to CMakeLists.txt**
Find the `SLIC3R_GUI_SOURCES` list in `src/slic3r/CMakeLists.txt`. After the existing `Utils/*.cpp` entries (around line 650-754), add:
```cmake
Utils/wxInspectorPlugins/DPIAwarePlugin.hpp
Utils/wxInspectorPlugins/DPIAwarePlugin.cpp
Utils/wxInspectorPlugins/CustomWidgetsPlugin.hpp
Utils/wxInspectorPlugins/CustomWidgetsPlugin.cpp
Utils/wxInspectorPlugins/Registration.hpp
```
(Note: Add all 5 files — 2 .hpp + 2 .cpp + 1 Registration.hpp. wxWidgets cmake needs headers listed too for the resource system.)
- [ ] **Step 4: Commit**
```bash
git add src/slic3r/GUI/MainFrame.cpp src/slic3r/CMakeLists.txt
git commit -m "feat: wire wxInspector plugins into MainFrame and build
- Call RegisterOrcaInspectorPlugins() after SetupInspectorAccelerator
- Add all plugin source files to SLIC3R_GUI_SOURCES"
```
---
### Task 6: Build and verify
**Files:**
- None modified (verification only)
- [ ] **Step 1: Configure the build**
```powershell
$cmakePath = "D:\VisualStudio\2026\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe"
& $cmakePath --build . --config Debug --target ALL_BUILD -- -m
```
Expected: Build succeeds with zero errors and zero warnings from our new files.
- [ ] **Step 2: Fix any compilation errors**
If the build fails:
- Check that `#include` paths resolve (the `slic3r/GUI/…` relative paths use `src/` as the include root — verify this is set up in CMake via `include_directories`)
- Check that `ButtonStyle` and `ButtonType` enums are visible (they're defined in `Button.hpp`)
- Check that `StateColor` constructor from `wxColour` is valid (it has `StateColor(wxColour const&)`)
- Check that `LabeledStaticBox::GetBorderColor()` returns by value (StateColor copy is fine)
- On macOS: static box margin removal call needs `#ifdef __WXOSX__` guard
- [ ] **Step 3: Launch OrcaSlicer and verify inspector**
Launch the built OrcaSlicer, press Ctrl+Shift+I to open the inspector:
1. Select the MainFrame in the tree — verify "DPI Scaling" category appears with Scale Factor, Prev Scale Factor, EM Unit, Normal Font, Force Rescale
2. Select an Orca Button — verify "Orca Button" category appears
3. Select an Orca CheckBox — verify "Orca CheckBox" category appears
4. Edit a property value (e.g., Scale Factor) — verify the setter applies correctly
5. Select a LabeledStaticBox — verify corner radius, border width, border color, scale appear
- [ ] **Step 5: Commit (if fixes were needed) or mark complete**
```bash
git status
```
If clean: verification complete. If changes were made: `git add` and commit with fix message.

View File

@@ -1,102 +0,0 @@
# Move `wxInspectable` into `DPIAware` — Design Spec
Date: 2026-07-23
Branch: `dev/layout-inspector`
## Overview
Move the `wxInspector::wxInspectable` base class from individual leaf classes (`DPIDialog`, `MainFrame`) into the common `DPIAware<P>` template. This makes every DPIAware widget automatically visible in the inspector tree without requiring each subclass to opt in.
## Motivation
Currently, only `DPIDialog` and `MainFrame` explicitly inherit `wxInspectable`. `DPIFrame` (which `MainFrame` inherits from) does not — `MainFrame` adds it manually. This means:
- Any `DPIAware<T>` widget that isn't `DPIDialog` or `MainFrame` is invisible in the inspector tree
- `DPIFrame` subclasses (`BaseTransparentDPIFrame`, `ImageDPIFrame`, `ModelMallDialog`, `MediaFileFrame`, `SecondaryCheckDialog`, `PrintErrorDialog`, etc.) don't appear
- Adding a new DPIAware widget type requires remembering to also inherit `wxInspectable`
Moving `wxInspectable` to `DPIAware` fixes this for all current and future DPIAware widgets at once.
## Design
### Change 1: `GUI_Utils.hpp` — `DPIAware<P>`
Add `wxInspector::wxInspectable` as a second base class, and call `SetupInspectorAccelerator(this)` in the constructor (after `this->CenterOnParent()`):
```cpp
// Before:
template<class P> class DPIAware : public P
// After:
template<class P> class DPIAware : public P, public wxInspector::wxInspectable
```
Add in the constructor body (after `this->CenterOnParent()` at line 110):
```cpp
SetupInspectorAccelerator(this);
```
This gives every `DPIAware<T>` widget both inspectability and the Ctrl+Shift+I keyboard shortcut automatically. `#include <wx/inspector/inspector.h>` is already present in the file.
### Change 2: `GUI_Utils.hpp` — `DPIDialog`
Remove the now-redundant `wxInspector::wxInspectable` and the `SetupInspectorAccelerator(this)` call:
```cpp
// Before:
class DPIDialog : public DPIAware<wxDialog>, public wxInspector::wxInspectable
// ...
SetupInspectorAccelerator(this);
// After:
class DPIDialog : public DPIAware<wxDialog>
// (SetupInspectorAccelerator call removed — now done in DPIAware constructor)
```
`DPIDialog` gets `wxInspectable` and the accelerator through `DPIAware<wxDialog>` now.
### Change 3: `MainFrame.hpp` — `MainFrame`
Remove the now-redundant `wxInspector::wxInspectable`:
```cpp
// Before:
class MainFrame : public DPIFrame, public wxInspector::wxInspectable
// After:
class MainFrame : public DPIFrame
```
`MainFrame` gets `wxInspectable` through `DPIFrame``DPIAware<wxFrame>`.
### Change 4: `MainFrame.cpp` — `MainFrame` constructor
Remove the now-redundant `SetupInspectorAccelerator(this)` call (line 304). It will be called automatically by the `DPIAware` constructor.
## Impact
| Widget | Before | After |
|--------|--------|-------|
| `DPIDialog` subclasses (~80) | ✓ inspectable | ✓ inspectable (transitive) |
| `MainFrame` | ✓ inspectable | ✓ inspectable (transitive) |
| `DPIFrame` subclasses (8 others) | ✗ invisible | ✓ inspectable |
| Future `DPIAware<T>` | ✗ invisible | ✓ inspectable |
## Files Modified
| File | Change |
|------|--------|
| `src/slic3r/GUI/GUI_Utils.hpp` | `DPIAware<P>` gains `wxInspector::wxInspectable` + `SetupInspectorAccelerator(this)` call; `DPIDialog` drops redundant `wxInspector::wxInspectable` and `SetupInspectorAccelerator(this)` |
| `src/slic3r/GUI/MainFrame.hpp` | `MainFrame` drops redundant `wxInspector::wxInspectable` |
| `src/slic3r/GUI/MainFrame.cpp` | Remove redundant `SetupInspectorAccelerator(this)` from MainFrame constructor |
## Non-Goals
- The `DPIAwarePlugin` detection logic (`dynamic_cast<DPIFrame*>` / `dynamic_cast<DPIDialog*>`) is unchanged
- No new DPI properties — this is purely about tree visibility and accelerator setup
## Risk Assessment
- **Multiple inheritance**: `DPIAware<P>` already has a vtable (virtual destructor). Adding `wxInspectable` adds a second base but no additional data members. The `wxInspector::wxInspectable` class is expected to be a lightweight marker interface.
- **Build**: No new includes needed; `<wx/inspector/inspector.h>` is already included in `GUI_Utils.hpp`.
- **Cross-platform**: The change is standard C++ multiple inheritance — no platform-specific concerns.

View File

@@ -1,244 +0,0 @@
# wxInspector Plugins for OrcaSlicer Custom Controls — Design Spec
Date: 2026-07-23
Branch: `dev/layout-inspector`
## Overview
Create wxInspector plugins that expose OrcaSlicer's custom widget properties in the inspector's property grid. Without these plugins, the inspector shows only generic wxWidgets properties — missing all DPI-awareness data, custom styling, and Orca-specific control state.
## Goals
1. **DPIAware properties** — Inspect and update `scale_factor`, `prev_scale_factor`, `em_unit`, and `normal_font` on any DPIAware-derived widget
2. **Custom widget properties** — Surface Orca-specific properties on `Button`, `CheckBox`, `TextInput`, `SwitchButton`, `ProgressBar`, `Label`, and `LabeledStaticBox`
3. **Minimal source changes** — Only add trivial (one-line) getters/setters to existing classes; no architectural refactoring of Orca's widget hierarchy
## Non-Goals
- Custom inspector panels or AUI tabs (use the existing property grid and method invoker)
- Python-plugin integration (this is C++ wxInspector, not Orca's Python plugin system)
- Event logging customization (the built-in event logger already works)
## Architecture
### Two Plugins
| Plugin | Class | Files |
|--------|-------|-------|
| DPIAware plugin | `DPIAwarePlugin` | `DPIAwarePlugin.hpp`, `DPIAwarePlugin.cpp` |
| Custom widgets plugin | `CustomWidgetsPlugin` | `CustomWidgetsPlugin.hpp`, `CustomWidgetsPlugin.cpp` |
| Registration helper | inline function | `Registration.hpp` |
All files live under `src/slic3r/Utils/wxInspectorPlugins/`.
### Plugin Detection Strategy
**DPIAware plugin**: Uses `dynamic_cast<DPIFrame*>` and `dynamic_cast<DPIDialog*>` as detection gates. `DPIFrame` = `DPIAware<wxFrame>`, `DPIDialog` = `DPIAware<wxDialog>`. Since these are concrete typedefs, `dynamic_cast` works at runtime. This covers `MainFrame`, `SettingsDialog`, and all 8 calibration dialogs (which inherit `DPIDialog`).
**Custom widgets plugin**: Gates broadly on `CLASSINFO(wxWindow)`, then uses per-type `dynamic_cast` inside `GetProperties` to check each Orca-specific type. Only matching types append properties.
### Registration
A single `RegisterOrcaInspectorPlugins()` inline function in `Registration.hpp` creates both plugins as function-local statics (matching the wxInspector built-in provider pattern) and registers them via `wxInspector::RegisterPlugin()`.
Called once from `MainFrame::MainFrame()` after `SetupInspectorAccelerator(this)`.
### Why Separate Plugins?
- DPIAware is a C++ template concept (not a wxClassInfo-isKindOf check), so it needs its own detection logic
- Custom widgets use standard wxClassInfo-based detection, matching the built-in provider pattern
- Two focused files are easier to review and maintain than one monolithic plugin
- Compile-time failure isolation: if a widget header changes, only one plugin breaks
## DPIAware Plugin — Property Specification
### Source Changes (GUI_Utils.hpp)
Four one-liner methods added to the `DPIAware<P>` template class (public section):
```cpp
float scale_factor() const { return m_scale_factor; } // already exists
float prev_scale_factor() const { return m_prev_scale_factor; } // already exists
int em_unit() const { return m_em_unit; } // already exists
void set_scale_factor(float v) { m_scale_factor = v; } // NEW
void set_prev_scale_factor(float v) { m_prev_scale_factor = v; } // NEW
void set_em_unit(int v) { m_em_unit = v; } // NEW
bool force_rescale() const { return m_force_rescale; } // NEW
// m_normal_font getter already exists: normal_font()
```
### Detection
```cpp
bool CanProvideProperties(wxClassInfo* info) override {
// Gated in GetProperties via dynamic_cast on the window itself
return info->IsKindOf(CLASSINFO(wxWindow));
}
```
In `GetProperties`:
```cpp
auto* win = obj.AsWindow();
bool isDPI = dynamic_cast<DPIFrame*>(win) || dynamic_cast<DPIDialog*>(win);
if (!isDPI) return props;
```
### Property Table (category: "DPI Scaling")
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Scale Factor | String (float) | Yes | `dpi->scale_factor()` | `dpi->set_scale_factor(v)` |
| Prev Scale Factor | String (float) | Yes | `dpi->prev_scale_factor()` | `dpi->set_prev_scale_factor(v)` |
| EM Unit | Integer | Yes | `dpi->em_unit()` | `dpi->set_em_unit(v)` |
| Normal Font | ReadOnly | No | `dpi->normal_font().GetNativeFontInfoDesc()` | — |
| Force Rescale | Boolean (ReadOnly) | No | `dpi->force_rescale()` | — |
**Note on setters**: The setters simply store values. They do NOT trigger a widget rescale/layout. To see the effect of a changed scale factor, use the inspector's Methods panel to call `Layout()` or resize the window — which triggers the DPI_CHANGED event path naturally.
## Custom Widgets Plugin — Property Specification
All properties are appended to the built-in wxWindow properties. Each widget type is independently detected via `dynamic_cast`.
### Detection gates (in `GetProperties`)
```cpp
auto* win = obj.AsWindow();
if (auto* btn = dynamic_cast<Button*>(win)) { addButtonProperties(btn, props); }
if (auto* cb = dynamic_cast<CheckBox*>(win)) { addCheckBoxProperties(cb, props); }
if (auto* ti = dynamic_cast<TextInput*>(win)) { addTextInputProperties(ti, props); }
if (auto* sb = dynamic_cast<SwitchButton*>(win)) { addSwitchButtonProperties(sb, props); }
if (auto* pb = dynamic_cast<ProgressBar*>(win)) { addProgressBarProperties(pb, props); }
if (auto* lbl = dynamic_cast<Label*>(win)) { addLabelProperties(lbl, props); }
if (auto* lsb = dynamic_cast<LabeledStaticBox*>(win)) { addLabeledStaticBoxProperties(lsb, props); }
```
### Orca Button (`Button`) — category: "Orca Button"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Button Style | Choice | Yes | enum→string | string→enum |
| Button Type | Choice | Yes | enum→string | string→enum |
| Selected | Boolean | Yes | `m_selected` (needs getter) | `SetSelected(v)` |
| Active Icon | ReadOnly | No | icon name string | — |
| Inactive Icon | ReadOnly | No | icon name string | — |
Choices for Button Style: `Regular`, `Confirm`, `Alert`, `Disabled`
Choices for Button Type: `Compact`, `Window`, `Choice`, `Parameter`, `Icon`, `Expanded`
**Source changes needed**: Button's `m_selected` is private. Add one-liner getter:
```cpp
bool IsSelected() const { return m_selected; }
```
### Orca CheckBox (`CheckBox`) — category: "Orca CheckBox"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Half Checked | Boolean | Yes | `m_half_checked` (needs getter) | `SetHalfChecked(v)` |
**Source changes needed**: `m_half_checked` is private. Add one-liner getter:
```cpp
bool IsHalfChecked() const { return m_half_checked; }
```
### Orca TextInput (`TextInput`) — category: "Orca TextInput"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Label | String | Yes | `GetLabel()` (inherited from wxWindow) | `SetLabel(v)` (exists) |
| Text Value | String | Yes | `GetTextCtrl()->GetValue()` (GetTextCtrl is public) | `GetTextCtrl()->SetValue(v)` |
| Corner Radius | Integer | Yes | `GetCornerRadius()` (NEW) | `SetCornerRadius(v)` (exists) |
**Source changes needed**: Add one getter to `TextInput`:
```cpp
int GetCornerRadius() const { return static_cast<int>(radius); }
```
(`radius` is inherited from StaticBox. `SetCornerRadius(double)` already exists. `GetTextCtrl()` is already public.)
### Orca SwitchButton (`SwitchButton`) — category: "Orca SwitchButton"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Value | Boolean | Yes | existing getter | existing setter |
### Orca ProgressBar (`ProgressBar`) — category: "Orca ProgressBar"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Proportion | Float (0-1) | Yes | `pb->m_proportion` (public member) | `pb->m_proportion = v` |
| Show Number | Boolean | Yes | `pb->m_shownumber` (public member) | `pb->m_shownumber = v` |
**No source changes needed**: `m_proportion` and `m_shownumber` are already public members. `SetValue(int)` and `SetProgress(int)` already exist as public methods.
### Orca Label (`Label`) — category: "Orca Label"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Is Hyperlink | Boolean | No | existing flag check | — |
| Font Size | ReadOnly | No | `GetFont().GetPointSize()` | — |
### LabeledStaticBox — category: "LabeledStaticBox"
| Name | Type | Editable | Getter | Setter |
|------|------|----------|--------|--------|
| Corner Radius | Integer | Yes | `GetCornerRadius()` (NEW) | `SetCornerRadius(v)` (exists) |
| Border Width | Integer | Yes | `GetBorderWidth()` (NEW) | `SetBorderWidth(v)` (exists) |
| Border Color | String (hex) | Yes | `GetBorderColor()` (NEW) | `SetBorderColor(v)` (exists) |
| Scale | Float (ReadOnly) | No | `m_scale` (protected, needs getter) | — |
**Source changes needed**: Four one-liner getters added to `LabeledStaticBox`:
```cpp
int GetCornerRadius() const { return m_radius; }
int GetBorderWidth() const { return m_border_width; }
StateColor GetBorderColor() const { return border_color; }
float GetScale() const { return m_scale; }
```
## Files Modified (Existing Code)
| File | Changes |
|------|---------|
| `src/slic3r/GUI/GUI_Utils.hpp` | +4 methods in `DPIAware<P>`: `set_scale_factor()`, `set_prev_scale_factor()`, `set_em_unit()`, `force_rescale()` |
| `src/slic3r/GUI/Widgets/LabeledStaticBox.hpp` | +4 getter declarations: `GetCornerRadius()`, `GetBorderWidth()`, `GetBorderColor()`, `GetScale()` |
| `src/slic3r/GUI/Widgets/LabeledStaticBox.cpp` | +4 getter implementations |
| `src/slic3r/GUI/Widgets/Button.hpp` | +1 getter: `IsSelected()` |
| `src/slic3r/GUI/Widgets/CheckBox.hpp` | +1 getter: `IsHalfChecked()` |
| `src/slic3r/GUI/Widgets/TextInput.hpp` | +1 getter: `GetCornerRadius()` |
| `src/slic3r/GUI/Widgets/ProgressBar.hpp` | None (public members are used directly) |
| `src/slic3r/GUI/MainFrame.cpp` | +1 `#include`, +1 call to `RegisterOrcaInspectorPlugins()` |
| `src/slic3r/CMakeLists.txt` | +4 entries in `SLIC3R_GUI_SOURCES` (the .cpp plugin files) |
## Files Created
```
src/slic3r/Utils/wxInspectorPlugins/
├── DPIAwarePlugin.hpp
├── DPIAwarePlugin.cpp
├── CustomWidgetsPlugin.hpp
├── CustomWidgetsPlugin.cpp
└── Registration.hpp
```
## Build & Linking
The `wxInspector` dependency is already wired:
- `deps/wxInspector/wxInspector.cmake` fetches and builds wxInspector
- `src/CMakeLists.txt` lines 92-93 link `wxInspector::wxInspector` into `wxWidgets_LIBRARIES`
- The plugin files only need `#include <wx/inspector/plugin.h>` and `#include <wx/inspector/inspector.h>` — both available from the installed dependency
No new CMake dependencies needed. Only the new source files need listing in `SLIC3R_GUI_SOURCES`.
## Error Handling & Edge Cases
- **Stale pointers**: Plugin lambdas capture raw pointers, regenerated on every `GetProperties` call (matching wxInspector's built-in provider pattern). Pointers live only until the next tree selection.
- **Widget destruction**: If a widget is destroyed while the inspector is showing its properties, `InspectableObject::IsValid()` returns false and properties are not displayed. The inspector won't show stale data.
- **Invalid property values**: Setters use `sscanf` / `ToLong` with validation (matching built-in patterns). Bogus input is rejected — setter returns `false`, property grid shows error state.
- **DPI drift**: Setting `scale_factor` without triggering rescale means displayed sizes don't match the new factor. This is acceptable — the inspector is a developer tool; operators know to call `Layout()` after making changes.
- **Missing widget type**: If a `dynamic_cast` fails for all types, only built-in wxWindow properties are shown. No crash, no error — just reduced info.
## Future Work (Out of Scope)
- **StateColor visualization**: `StateColor` is a multi-value type (maps bitmask states to colors). A full solution would need a custom property editor (e.g., a table showing each state→color pair). Keep it simple for now.
- **ScalableBitmap display**: Could show the bitmap as an inline thumbnail. Complex property editor work — deferred.
- **More widget types**: `SwitchBoard`, `MultiSwitchButton`, `StepCtrl`, `FanControl`, `DropDown`, `ComboBox`, `AMS*` widgets could all benefit. Add as needed.
- **Property refresh on tree selection**: Currently properties are static snapshots. A "refresh" button or auto-poll could keep values current for rapidly-changing widgets (progress bars, etc.). The built-in wxInspector already provides a tree-refresh button.

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -2762,6 +2762,9 @@ msgstr ""
msgid "Merge with" msgid "Merge with"
msgstr "" msgstr ""
msgid "Decompose Color"
msgstr ""
msgid "Delete this filament" msgid "Delete this filament"
msgstr "" msgstr ""
@@ -3039,6 +3042,9 @@ msgstr ""
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "" msgstr ""
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr ""
msgid "Add layers" msgid "Add layers"
msgstr "" msgstr ""
@@ -4497,7 +4503,7 @@ msgid ""
"The value will be reset to 0." "The value will be reset to 0."
msgstr "" msgstr ""
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "" msgstr ""
msgid "" msgid ""
@@ -4528,13 +4534,13 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
@@ -4565,6 +4571,9 @@ msgid ""
"No - Cancel enabling spiral mode" "No - Cancel enabling spiral mode"
msgstr "" msgstr ""
msgid "N/A"
msgstr ""
msgid "Printing" msgid "Printing"
msgstr "" msgstr ""
@@ -5013,9 +5022,6 @@ msgstr ""
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "" msgstr ""
msgid "N/A"
msgstr ""
msgid "System agents" msgid "System agents"
msgstr "" msgstr ""
@@ -5945,16 +5951,22 @@ msgstr ""
msgid "Save current project as" msgid "Save current project as"
msgstr "" msgstr ""
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "" msgstr ""
msgid "Load a model" msgid "Load a model"
msgstr "" msgstr ""
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "" msgstr ""
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "" msgstr ""
msgid "Import Configs" msgid "Import Configs"
@@ -7403,6 +7415,9 @@ msgstr ""
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "" msgstr ""
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr ""
#, possible-boost-format #, possible-boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "" msgstr ""
@@ -7523,12 +7538,36 @@ msgstr ""
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "" msgstr ""
msgid "Add Mixed Filament"
msgstr ""
msgid "Mixed Filament"
msgstr ""
msgid "Remove last mixed filament"
msgstr ""
msgid "Add mixed filament"
msgstr ""
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr ""
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "" msgstr ""
msgid "Pellets" msgid "Pellets"
msgstr "" msgstr ""
msgid "Mixed filament has broken component references"
msgstr ""
msgid "Edit / Delete / Merge"
msgstr ""
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr ""
#, possible-c-format, possible-boost-format #, possible-c-format, possible-boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "" msgstr ""
@@ -7663,7 +7702,13 @@ msgstr ""
msgid "Customized Preset" msgid "Customized Preset"
msgstr "" msgstr ""
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "" msgstr ""
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -7685,7 +7730,7 @@ msgstr ""
#, possible-c-format, possible-boost-format #, possible-c-format, possible-boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
msgid "Object too small" msgid "Object too small"
@@ -7700,6 +7745,12 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "" msgstr ""
msgid "Matching textures to filaments"
msgstr ""
msgid "Texture Import Warning"
msgstr ""
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "" msgstr ""
@@ -7894,6 +7945,18 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "" msgstr ""
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr ""
msgid "Applying texture colors..."
msgstr ""
msgid "Updating 3D view..."
msgstr ""
msgid "Texture colors applied."
msgstr ""
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "" msgstr ""
@@ -8023,6 +8086,17 @@ msgstr ""
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "" msgstr ""
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr ""
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "" msgstr ""
@@ -9043,6 +9117,9 @@ msgstr ""
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "" msgstr ""
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr ""
msgid "By Layer" msgid "By Layer"
msgstr "" msgstr ""
@@ -9070,9 +9147,6 @@ msgstr ""
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "" msgstr ""
msgid "Publish"
msgstr ""
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "" msgstr ""
@@ -9088,6 +9162,64 @@ msgstr ""
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "" msgstr ""
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, possible-c-format, possible-boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, possible-c-format, possible-boost-format #, possible-c-format, possible-boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "" msgstr ""
@@ -10329,11 +10461,11 @@ msgstr ""
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "" msgstr ""
msgid "Copy paramters" msgid "Copy parameters"
msgstr "" msgstr ""
#, possible-c-format, possible-boost-format #, possible-c-format, possible-boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "" msgstr ""
#, possible-c-format, possible-boost-format #, possible-c-format, possible-boost-format
@@ -10807,27 +10939,6 @@ msgstr ""
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "" msgstr ""
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr ""
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr ""
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr ""
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr ""
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr ""
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr ""
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr ""
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "" msgstr ""
@@ -11510,6 +11621,9 @@ msgstr ""
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "" msgstr ""
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr ""
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "" msgstr ""
@@ -11546,6 +11660,9 @@ msgstr ""
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "" msgstr ""
msgid "The wipe tower filament cannot be a mixed filament."
msgstr ""
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "" msgstr ""
@@ -11874,7 +11991,7 @@ msgstr ""
msgid "Other layers" msgid "Other layers"
msgstr "" msgstr ""
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "" msgstr ""
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -12958,6 +13075,7 @@ msgstr ""
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "" msgstr ""
msgctxt "second"
msgid "s" msgid "s"
msgstr "" msgstr ""
@@ -13251,6 +13369,48 @@ msgstr ""
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "" msgstr ""
msgid "Is mixed filament"
msgstr ""
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr ""
msgid "Mixed filament components"
msgstr ""
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr ""
msgid "Mixed filament sublayer ratios"
msgstr ""
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr ""
msgid "Mixed filament gradient"
msgstr ""
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr ""
msgid "Mixed filament gradient range"
msgstr ""
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr ""
msgid "Mixed filament gradient curve"
msgstr ""
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr ""
msgid "Mixed filament per-part gradient"
msgstr ""
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr ""
msgid "Filament printable" msgid "Filament printable"
msgstr "" msgstr ""
@@ -14398,6 +14558,7 @@ msgstr ""
msgid "The allowed maximum output force of Y axis" msgid "The allowed maximum output force of Y axis"
msgstr "" msgstr ""
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "" msgstr ""
@@ -14407,6 +14568,7 @@ msgstr ""
msgid "The machine bed mass load of Y axis" msgid "The machine bed mass load of Y axis"
msgstr "" msgstr ""
msgctxt "gram"
msgid "g" msgid "g"
msgstr "" msgstr ""
@@ -14675,7 +14837,7 @@ msgstr ""
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "" msgstr ""
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "" msgstr ""
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -14831,7 +14993,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
@@ -14874,7 +15036,7 @@ msgstr ""
msgid "Z-hop height" msgid "Z-hop height"
msgstr "" msgstr ""
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "" msgstr ""
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -15834,6 +15996,12 @@ msgid ""
"Setting a value in the retract amount before wipe setting below will perform any excess retraction before the wipe, else it will be performed after." "Setting a value in the retract amount before wipe setting below will perform any excess retraction before the wipe, else it will be performed after."
msgstr "" msgstr ""
msgid "Mixed color sublayer"
msgstr ""
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr ""
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "" msgstr ""
@@ -16861,6 +17029,9 @@ msgstr ""
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "" msgstr ""
msgid "The file format is incompatible and cannot be parsed."
msgstr ""
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "" msgstr ""
@@ -18191,17 +18362,17 @@ msgstr ""
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "" msgstr ""
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "" msgstr ""
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
msgid "Please select at least one printer or filament." msgid "Please select at least one printer or filament."
@@ -18416,7 +18587,7 @@ msgstr ""
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "" msgstr ""
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "" msgstr ""
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -18458,7 +18629,7 @@ msgstr ""
msgid "Stored logs" msgid "Stored logs"
msgstr "" msgstr ""
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "" msgstr ""
msgid "Profiles" msgid "Profiles"
@@ -18523,7 +18694,7 @@ msgstr ""
msgid "Authorizing..." msgid "Authorizing..."
msgstr "" msgstr ""
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "" msgstr ""
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -18961,7 +19132,7 @@ msgstr ""
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "" msgstr ""
msgid "Fila Saving" msgid "File Saving"
msgstr "" msgstr ""
msgid "Don't remind me again" msgid "Don't remind me again"
@@ -19244,6 +19415,15 @@ msgstr ""
msgid "Skipping objects." msgid "Skipping objects."
msgstr "" msgstr ""
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "" msgstr ""
@@ -19321,6 +19501,9 @@ msgstr ""
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "" msgstr ""
msgid "s"
msgstr ""
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "" msgstr ""

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2025-03-15 10:55+0100\n" "PO-Revision-Date: 2025-03-15 10:55+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@@ -3015,6 +3015,10 @@ msgstr "Editar"
msgid "Merge with" msgid "Merge with"
msgstr "Fusiona amb" msgstr "Fusiona amb"
# AI Translated
msgid "Decompose Color"
msgstr "Descompondre el color"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Elimina aquest filament" msgstr "Elimina aquest filament"
@@ -3316,6 +3320,10 @@ msgstr "Muntatge"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Fusionar les peces en un objecte" msgstr "Fusionar les peces en un objecte"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Utilitzar una alçada de capa variable juntament amb la subcapa de color mixt pot reduir la qualitat de la barreja de colors."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Afegir capes" msgstr "Afegir capes"
@@ -4893,7 +4901,7 @@ msgstr ""
"\n" "\n"
"El valor es restablirà a 0." "El valor es restablirà a 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "La paret addicional alternativa no funciona bé quan assegurar el gruix de la closca vertical està establert a Tot." msgstr "La paret addicional alternativa no funciona bé quan assegurar el gruix de la closca vertical està establert a Tot."
msgid "" msgid ""
@@ -4939,7 +4947,7 @@ msgstr ""
"NO - Mantenir l'alçada de la capa de suport independent" "NO - Mantenir l'alçada de la capa de suport independent"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height ha de ser més petit que layer_height.\n" "seam_slope_start_height ha de ser més petit que layer_height.\n"
@@ -4947,7 +4955,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"La profunditat de bloqueig ha de ser menor que la profunditat de la pell.\n" "La profunditat de bloqueig ha de ser menor que la profunditat de la pell.\n"
@@ -4987,6 +4995,9 @@ msgstr ""
"Sí: canviar aquesta configuració i activar el mode d'espiral automàticament\n" "Sí: canviar aquesta configuració i activar el mode d'espiral automàticament\n"
"No - Renunciar a utilitzar el mode espiral aquesta vegada" "No - Renunciar a utilitzar el mode espiral aquesta vegada"
msgid "N/A"
msgstr "N/D"
msgid "Printing" msgid "Printing"
msgstr "Imprimint" msgstr "Imprimint"
@@ -5448,9 +5459,6 @@ msgstr "Patró no vàlid. Utilitzeu N, N#K, o una llista separada per comes amb
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Format no vàlid. Format vectorial esperat: \"%1%\"" msgstr "Format no vàlid. Format vectorial esperat: \"%1%\""
msgid "N/A"
msgstr "N/D"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Agents del sistema" msgstr "Agents del sistema"
@@ -6413,16 +6421,22 @@ msgstr "Desa el projecte com a"
msgid "Save current project as" msgid "Save current project as"
msgstr "Desar el projecte actual com" msgstr "Desar el projecte actual com"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importar 3MF STL/STEP/SVG/OBJ/AMF" msgstr "Importar 3MF STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Carregar un model" msgstr "Carregar un model"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importar fitxer ZIP" msgstr "Importar fitxer ZIP"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Carregar models continguts dins d'un arxiu zip" msgstr "Carregar models continguts dins d'un arxiu zip"
msgid "Import Configs" msgid "Import Configs"
@@ -7956,6 +7970,10 @@ msgstr "Personalitzar la placa actual"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "El broquet %s no pot imprimir %s." msgstr "El broquet %s no pot imprimir %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Imprimir filament de color mixt en una impressora d'un sol extrusor requereix canvis de filament i purgues freqüents, cosa que pot augmentar considerablement el malbaratament i el risc d'obstrucció del broquet o del conducte de residus."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "No es recomana barrejar %1% amb %2% en la impressió.\n" msgstr "No es recomana barrejar %1% amb %2% en la impressió.\n"
@@ -8081,6 +8099,26 @@ msgstr "Sincronitzar la llista de filaments des d'AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Configurar els filaments a utilitzar" msgstr "Configurar els filaments a utilitzar"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Afegir filament mixt"
# AI Translated
msgid "Mixed Filament"
msgstr "Filament mixt"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Eliminar l'últim filament mixt"
# AI Translated
msgid "Add mixed filament"
msgstr "Afegir filament mixt"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "El filament mixt té components no vàlids o incoherents. Torneu a editar les entrades afectades."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Cercar placa, objecte i peça." msgstr "Cercar placa, objecte i peça."
@@ -8088,6 +8126,18 @@ msgstr "Cercar placa, objecte i peça."
msgid "Pellets" msgid "Pellets"
msgstr "Pèl·lets" msgstr "Pèl·lets"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "El filament mixt té referències de components trencades"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Editar / Esborrar / Fusionar"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "El filament mixt de destinació utilitza aquest filament físic com a component. En fusionar-los s'eliminarà aquest filament físic i el filament mixt pot quedar no vàlid. Voleu continuar?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "En completar l'operació, el projecte %s es tancarà i es crearà un nou projecte." msgstr "En completar l'operació, el projecte %s es tancarà i es crearà un nou projecte."
@@ -8231,9 +8281,15 @@ msgstr "Confirmeu que els Codis-G d'aquests perfils són segurs per evitar danys
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Perfil personalitzat" msgstr "Perfil personalitzat"
msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
# AI Translated # AI Translated
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Els noms dels components dins del fitxer STEP no tenen format UTF8!" msgstr "Els noms dels components dins del fitxer STEP no tenen format UTF-8!"
# AI Translated # AI Translated
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -8255,10 +8311,10 @@ msgstr "El volum de l'objecte és zero"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"L'objecte del fitxer %s és massa petit, i potser en metres o polzades.\n" "L'objecte del fitxer %s és massa petit, i potser en metres o polzades.\n"
" Vols escalar a mil·límetres?" "Vols escalar a mil·límetres?"
msgid "Object too small" msgid "Object too small"
msgstr "Objecte massa petit" msgstr "Objecte massa petit"
@@ -8275,6 +8331,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Objecte de múltiples peces detectat" msgstr "Objecte de múltiples peces detectat"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Associant les textures als filaments"
# AI Translated
msgid "Texture Import Warning"
msgstr "Avís d'importació de textures"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Carregar aquests fitxers com un sol objecte amb diverses peces?\n" msgstr "Carregar aquests fitxers com un sol objecte amb diverses peces?\n"
@@ -8488,6 +8552,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Sincronitza ara" msgstr "Sincronitza ara"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "No s'ha pogut importar la textura. El model sembla contenir dades de textura, però el procés d'importació no s'ha pogut completar. El model s'importarà només com a geometria."
# AI Translated
msgid "Applying texture colors..."
msgstr "Aplicant els colors de textura..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Actualitzant la vista 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "Colors de textura aplicats."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Podeu mantenir els perfils modificats al projecte nou o descartar-los" msgstr "Podeu mantenir els perfils modificats al projecte nou o descartar-los"
@@ -8619,6 +8699,17 @@ msgstr "Desa el fitxer Laminat com a:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "El fitxer %s s'ha enviat a l'emmagatzematge de la impressora i es pot visualitzar a la impressora." msgstr "El fitxer %s s'ha enviat a l'emmagatzematge de la impressora i es pot visualitzar a la impressora."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publicar"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "El tipus de broquet no està establert. Establiu el broquet i torneu-ho a provar." msgstr "El tipus de broquet no està establert. Establiu el broquet i torneu-ho a provar."
@@ -9780,6 +9871,10 @@ msgstr "Gerro en Espiral"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Seqüència d'impressió de la primera capa" msgstr "Seqüència d'impressió de la primera capa"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "La llista de filaments conté filaments mixtos. La seqüència de filaments personalitzada no tindrà efecte."
msgid "By Layer" msgid "By Layer"
msgstr "Per Capa" msgstr "Per Capa"
@@ -9808,9 +9903,6 @@ msgstr "Anar a la pàgina web de publicació de models"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Nota: La preparació pot trigar uns quants minuts. Si us plau, sigui pacient." msgstr "Nota: La preparació pot trigar uns quants minuts. Si us plau, sigui pacient."
msgid "Publish"
msgstr "Publicar"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "La publicació ha estat cancel·lada" msgstr "La publicació ha estat cancel·lada"
@@ -9826,6 +9918,64 @@ msgstr "Carregant dades"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Anar a la pàgina web" msgstr "Anar a la pàgina web"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Desar %s com a" msgstr "Desar %s com a"
@@ -11189,12 +11339,12 @@ msgid "No modifications need to be copied."
msgstr "No cal copiar cap modificació." msgstr "No cal copiar cap modificació."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Copiar els paràmetres" msgstr "Copiar els paràmetres"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Modificar els paràmetres de %s" msgstr "Modificar els paràmetres de %s"
# AI Translated # AI Translated
@@ -11715,29 +11865,6 @@ msgstr "Volums de purga per al canvi de filament"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Trieu el color del filament" msgstr "Trieu el color del filament"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "La visualització en directe nativa de Wayland requereix el sink de vídeo GTK de GStreamer. Instal·leu el connector gtksink per a GStreamer i reinicieu l'OrcaSlicer."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "No s'ha pogut inicialitzar el sink de vídeo natiu de GStreamer per a Wayland. Comproveu la instal·lació del connector GTK de GStreamer."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "El Windows Media Player és necessari per a aquesta tasca. Voleu habilitar el \"Windows Media Player\" per al vostre sistema operatiu?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource no s'ha registrat correctament per a la reproducció multimèdia! Premeu Sí per tornar-lo a registrar. Seràs promocionat dues vegades"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Falta el component BambuSource registrat per a la reproducció multimèdia! Reinstal·leu OrcaSlicer o cerqueu ajuda a la comunitat."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Utilitzar un BambuSource des d'una instal·lació diferent, la reproducció de vídeo pot no funcionar correctament! Premeu Sí per solucionar-ho."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Al vostre sistema li falten còdecs H.264 per al GStreamer, necessaris per reproduir vídeo. (Proveu d'instal·lar els paquets gstreamer1.0-plugins-bad o gstreamer1.0-libav i, a continuació, reinicieu Orca Slicer?)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "L'agent del núvol no està disponible. Reinicieu l'OrcaSlicer i torneu-ho a provar." msgstr "L'agent del núvol no està disponible. Reinicieu l'OrcaSlicer i torneu-ho a provar."
@@ -12465,6 +12592,10 @@ msgstr "Si tot i així voleu imprimir, podeu activar l'opció a Preferències /
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "No hi ha extrusions a la configuració actual." msgstr "No hi ha extrusions a la configuració actual."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "S'està utilitzant un filament mixt amb degradat, però 'Subcapa de color mixt' està desactivat. El degradat no s'imprimirà."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "El mode suau de timelapse no està permès quan la seqüència \"Per objecte\" està habilitada." msgstr "El mode suau de timelapse no està permès quan la seqüència \"Per objecte\" està habilitada."
@@ -12501,6 +12632,10 @@ msgstr "Potser voleu reduir la mida del model o canviar la configuració d'impre
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Alçada de Capa Variable no és compatible amb suports Orgànics." msgstr "Alçada de Capa Variable no és compatible amb suports Orgànics."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "El filament de la torre de purga no pot ser un filament mixt."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "És possible que els diferents diàmetres de broquet i els diferents diàmetres de filament no funcionin bé quan la torre principal està activada. És molt experimental, així que si us plau, procediu amb precaució." msgstr "És possible que els diferents diàmetres de broquet i els diferents diàmetres de filament no funcionin bé quan la torre principal està activada. És molt experimental, així que si us plau, procediu amb precaució."
@@ -12868,8 +13003,8 @@ msgstr "mm o %"
msgid "Other layers" msgid "Other layers"
msgstr "Altres capes" msgstr "Altres capes"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Temperatura del llit per a les capes excepte la primera. Un valor de 0 significa que el filament no admet la impressió sobre el Cool Plate SuperTack." msgstr "Temperatura del llit de les capes excepte la inicial. Un valor de 0 significa que el filament no admet la impressió sobre el Cool Plate SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Temperatura del llit de les capes excepte la inicial. El valor 0 significa que el filament no admet imprimir a una Base Freda." msgstr "Temperatura del llit de les capes excepte la inicial. El valor 0 significa que el filament no admet imprimir a una Base Freda."
@@ -14263,6 +14398,8 @@ msgstr "Temps de capa"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "S'habilitarà el ventilador de refrigeració de peces per a capes el temps estimat de les quals sigui inferior a aquest valor. La velocitat del ventilador s'interpola entre les velocitats mínima i màxima del ventilador segons el temps d'impressió per capes" msgstr "S'habilitarà el ventilador de refrigeració de peces per a capes el temps estimat de les quals sigui inferior a aquest valor. La velocitat del ventilador s'interpola entre les velocitats mínima i màxima del ventilador segons el temps d'impressió per capes"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14572,6 +14709,62 @@ msgstr "Material de suport"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "El material de suport s'utilitza habitualment per imprimir interfície de suport i suport" msgstr "El material de suport s'utilitza habitualment per imprimir interfície de suport i suport"
# AI Translated
msgid "Is mixed filament"
msgstr "És filament mixt"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Indica si aquesta ranura de filament és un filament mixt compost per diversos filaments físics"
# AI Translated
msgid "Mixed filament components"
msgstr "Components del filament mixt"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Índexs (començant per 1) dels filaments components, separats per comes; p. ex. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Proporcions de subcapa del filament mixt"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Valors de proporció separats per comes que sumin 1.0; p. ex. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Degradat del filament mixt"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Activa el mode de degradat en direcció Z per a les subcapes del filament mixt. En activar-lo, les proporcions de les subcapes varien linealment entre capes."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Rang del degradat del filament mixt"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Proporcions inicial i final del primer component en el mode de degradat. Parell separat per comes; p. ex. \"0.10,0.90\" significa del 10% al 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Corba del degradat del filament mixt"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Corba personalitzada opcional, a l'estil de Photoshop, que assigna el progrés en Z a la proporció del primer component. Es codifica com a punts de control separats per barres verticals, amb el format \"x,y\" (heretat) o \"x,y,m_in,m_out\" quan cal anul·lar la tangent (un valor buit o \"nan\" fa servir el valor PCHIP predeterminat). x està dins de [0,1]; y es limita al rang de proporcions configurat; p. ex. \"0,0.15|0.5,0.50|1,0.85\". Si es deixa buit, s'utilitza el gradient_range lineal."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Degradat per peça del filament mixt"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Quan el mode de degradat està activat, aplica el degradat a cada peça d'un muntatge de manera independent en lloc de tractar tot el muntatge com un únic rang Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament imprimible" msgstr "Filament imprimible"
@@ -15860,6 +16053,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Força de sortida màxima permesa de l'eix Y" msgstr "Força de sortida màxima permesa de l'eix Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15872,6 +16066,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Càrrega de massa del llit de la màquina a l'eix Y" msgstr "Càrrega de massa del llit de la màquina a l'eix Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16197,7 +16392,7 @@ msgid "Reduce infill retraction"
msgstr "Reduir la retracció de farciment" msgstr "Reduir la retracció de farciment"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "No retrau quan el desplaçament està totalment a la zona de farciment. Això vol dir que l'oozing( goteig ) queda amagat. Això pot reduir els temps de retracció per a models complexos i estalviar temps d'impressió, però fer que el laminat i la generació de Codi-G siguin més lents. Tingueu en compte que el salt en Z tampoc es realitza a les zones on s'omet la retracció." msgstr "No retrau quan el desplaçament està totalment a la zona de farciment. Això vol dir que l'oozing( goteig ) queda amagat. Això pot reduir els temps de retracció per a models complexos i estalviar temps d'impressió, però fer que el laminat i la generació de Codi-G siguin més lents. Tingueu en compte que el salt en Z tampoc es realitza a les zones on s'omet la retracció."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16373,7 +16568,7 @@ msgstr "Quantitat de retracció després de netejar"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Longitud de la retracció ràpida després de netejar, relativa a la longitud de retracció.\n" "Longitud de la retracció ràpida després de netejar, relativa a la longitud de retracció.\n"
@@ -16420,7 +16615,7 @@ msgstr "Quan s'activa la retracció abans d'un canvi d'eina, el filament es reti
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Alçada Z-hop" msgstr "Alçada Z-hop"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Cade vegada que es fa una retracció, s'aixeca una mica el broquet per crear espai lliure entre el broquet i la impressió. Evita que el broquet colpegi la impressió en els desplaçaments. L'ús de la línia espiral per aixecar z pot evitar l'aparició de fils" msgstr "Cade vegada que es fa una retracció, s'aixeca una mica el broquet per crear espai lliure entre el broquet i la impressió. Evita que el broquet colpegi la impressió en els desplaçaments. L'ús de la línia espiral per aixecar z pot evitar l'aparició de fils"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17482,6 +17677,14 @@ msgstr ""
"\n" "\n"
"L'establiment d'un valor en la quantitat de retractació abans de l'esborrat es realitzarà qualsevol retracció en excés abans de la neteja, sinó es realitzarà després." "L'establiment d'un valor en la quantitat de retractació abans de l'esborrat es realitzarà qualsevol retracció en excés abans de la neteja, sinó es realitzarà després."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Subcapa de color mixt"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Activa la divisió en subcapes de color mixt. En activar-la, les capes que contenen filaments de color mixt es divideixen en subcapes per aconseguir efectes de barreja de colors."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "La Torre de Purga es pot utilitzar per netejar els residus al broquet i estabilitzar la pressió de la cambra dins del broquet, per tal d'evitar defectes d'aparença en imprimir objectes." msgstr "La Torre de Purga es pot utilitzar per netejar els residus al broquet i estabilitzar la pressió de la cambra dins del broquet, per tal d'evitar defectes d'aparença en imprimir objectes."
@@ -18573,6 +18776,10 @@ msgstr "La generació de malla del fitxer del model ha fallat o la forma no és
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "El fitxer subministrat no s'ha pogut llegir perquè està buit" msgstr "El fitxer subministrat no s'ha pogut llegir perquè està buit"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "El format del fitxer és incompatible i no es pot analitzar."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Format de fitxer desconegut. El fitxer d'entrada ha de tenir extensió .stl, .obj, .amf( .xml )." msgstr "Format de fitxer desconegut. El fitxer d'entrada ha de tenir extensió .stl, .obj, .amf( .xml )."
@@ -20071,19 +20278,19 @@ msgstr "Mostrar només els noms de les impressores amb canvis als perfils d'impr
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Mostrar només els noms dels filaments amb canvis en els perfils de filament." msgstr "Mostrar només els noms dels filaments amb canvis en els perfils de filament."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Només es mostraran els noms de les impressores amb perfils d'impressora d'usuari i cada perfil que trieu s'exportarà com a fitxer zip." msgstr "Només es mostraran els noms de les impressores amb perfils d'impressora d'usuari i cada perfil que trieu s'exportarà com a fitxer zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Només es mostraran els noms dels filaments amb perfils de filament d'usuari, \n" "Només es mostraran els noms dels filaments amb perfils de filament d'usuari, \n"
"i tots els perfils de filament d'usuari de cada nom de filament que seleccioneu s'exportaran com a zip." "i tots els perfils de filament d'usuari de cada nom de filament que seleccioneu s'exportaran com a zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Només es mostraran els noms de les impressores amb perfils de processament modificats, \n" "Només es mostraran els noms de les impressores amb perfils de processament modificats, \n"
"I tots els valors perfils del procés d'usuari de cada nom d'impressora que seleccioneu s'exportaran com a ZIP." "I tots els valors perfils del procés d'usuari de cada nom d'impressora que seleccioneu s'exportaran com a ZIP."
@@ -20328,7 +20535,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Necessitem informació per diagnosticar l'origen del problema. Consulteu la pàgina wiki per a una guia detallada." msgstr "Necessitem informació per diagnosticar l'origen del problema. Consulteu la pàgina wiki per a una guia detallada."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "El botó Empaquetar recull el fitxer del projecte i els registres de la sessió actual en un fitxer zip." msgstr "El botó Empaquetar recull el fitxer del projecte i els registres de la sessió actual en un fitxer zip."
# AI Translated # AI Translated
@@ -20384,7 +20591,7 @@ msgid "Stored logs"
msgstr "Registres emmagatzemats" msgstr "Registres emmagatzemats"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Empaqueta tots els registres emmagatzemats en un fitxer zip." msgstr "Empaqueta tots els registres emmagatzemats en un fitxer zip."
# AI Translated # AI Translated
@@ -20472,7 +20679,7 @@ msgid "Authorizing..."
msgstr "Autoritzant..." msgstr "Autoritzant..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Error. No es pot obtenir el testimoni d'api per a l'autorització" msgstr "Error. No es pot obtenir el testimoni d'api per a l'autorització"
# AI Translated # AI Translated
@@ -20928,8 +21135,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Activar l'assignació intel·ligent de filament: assigna un filament a diversos broquets per maximitzar l'estalvi" msgstr "Activar l'assignació intel·ligent de filament: assigna un filament a diversos broquets per maximitzar l'estalvi"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Estalvi de filament" msgstr "Desament de fitxers"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "No m'ho recordis més" msgstr "No m'ho recordis més"
@@ -21258,6 +21465,15 @@ msgstr "Aquesta acció no es pot desfer. Continuar?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Ometent objectes." msgstr "Ometent objectes."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Seleccioneu filament" msgstr "Seleccioneu filament"
@@ -21338,6 +21554,9 @@ msgstr "Reinicia ara"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "SENSE EMPENTA" msgstr "SENSE EMPENTA"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Velocitat volumètrica" msgstr "Velocitat volumètrica"
@@ -21989,6 +22208,41 @@ msgstr ""
"Evitar la deformació( warping )\n" "Evitar la deformació( warping )\n"
"Sabíeu que quan imprimiu materials propensos a deformar-se, com ara l'ABS, augmentar adequadament la temperatura del llit pot reduir la probabilitat de deformació?" "Sabíeu que quan imprimiu materials propensos a deformar-se, com ara l'ABS, augmentar adequadament la temperatura del llit pot reduir la probabilitat de deformació?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "La visualització en directe nativa de Wayland requereix el sink de vídeo GTK de GStreamer. Instal·leu el connector gtksink per a GStreamer i reinicieu l'OrcaSlicer."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "No s'ha pogut inicialitzar el sink de vídeo natiu de GStreamer per a Wayland. Comproveu la instal·lació del connector GTK de GStreamer."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "El Windows Media Player és necessari per a aquesta tasca. Voleu habilitar el \"Windows Media Player\" per al vostre sistema operatiu?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource no s'ha registrat correctament per a la reproducció multimèdia! Premeu Sí per tornar-lo a registrar. Seràs promocionat dues vegades"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Falta el component BambuSource registrat per a la reproducció multimèdia! Reinstal·leu OrcaSlicer o cerqueu ajuda a la comunitat."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Utilitzar un BambuSource des d'una instal·lació diferent, la reproducció de vídeo pot no funcionar correctament! Premeu Sí per solucionar-ho."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Al vostre sistema li falten còdecs H.264 per al GStreamer, necessaris per reproduir vídeo. (Proveu d'instal·lar els paquets gstreamer1.0-plugins-bad o gstreamer1.0-libav i, a continuació, reinicieu Orca Slicer?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Estalvi de filament"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Jakub Hencl\n" "Last-Translator: Jakub Hencl\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2977,6 +2977,10 @@ msgstr "Upravit"
msgid "Merge with" msgid "Merge with"
msgstr "Sloučit s" msgstr "Sloučit s"
# AI Translated
msgid "Decompose Color"
msgstr "Rozložit barvu"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Smazat tento filament" msgstr "Smazat tento filament"
@@ -3279,6 +3283,10 @@ msgstr "Sestava"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Sloučit části do objektu" msgstr "Sloučit části do objektu"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Použití proměnné výšky vrstvy společně s podvrstvou míchané barvy může zhoršit kvalitu míchání barev."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Přidat vrstvy" msgstr "Přidat vrstvy"
@@ -4851,7 +4859,7 @@ msgstr ""
"\n" "\n"
"Hodnota bude nastavena na 0." "Hodnota bude nastavena na 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Střídavá přídavná stěna nefunguje správně, pokud je zajištění tloušťky svislé stěny nastaveno na Vše." msgstr "Střídavá přídavná stěna nefunguje správně, pokud je zajištění tloušťky svislé stěny nastaveno na Vše."
msgid "" msgid ""
@@ -4897,7 +4905,7 @@ msgstr ""
"NE Ponechat nezávislou výšku podpůrné vrstvy" "NE Ponechat nezávislou výšku podpůrné vrstvy"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height musí být menší než layer_height.\n" "seam_slope_start_height musí být menší než layer_height.\n"
@@ -4905,7 +4913,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Hloubka zamčení musí být menší než hloubka krycí vrstvy.\n" "Hloubka zamčení musí být menší než hloubka krycí vrstvy.\n"
@@ -4945,6 +4953,10 @@ msgstr ""
"Ano změnit tato nastavení a automaticky povolit spirálový režim\n" "Ano změnit tato nastavení a automaticky povolit spirálový režim\n"
"Ne tentokrát nepoužít spirálový režim" "Ne tentokrát nepoužít spirálový režim"
# AI Translated
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Tisk" msgstr "Tisk"
@@ -5404,10 +5416,6 @@ msgstr "Neplatný vzor. Použijte N, N#K nebo seznam oddělený čárkami s voli
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Neplatný formát. Očekávaný vektorový formát: \"%1%\"" msgstr "Neplatný formát. Očekávaný vektorový formát: \"%1%\""
# AI Translated
msgid "N/A"
msgstr "N/A"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Systémoví agenti" msgstr "Systémoví agenti"
@@ -6374,16 +6382,22 @@ msgstr "Uložit projekt jako"
msgid "Save current project as" msgid "Save current project as"
msgstr "Uložit aktuální projekt jako" msgstr "Uložit aktuální projekt jako"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importovat 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importovat 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Načíst model" msgstr "Načíst model"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importovat ZIP archiv" msgstr "Importovat ZIP archiv"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Načíst modely obsažené v zip archivu" msgstr "Načíst modely obsažené v zip archivu"
msgid "Import Configs" msgid "Import Configs"
@@ -7921,6 +7935,10 @@ msgstr "Přizpůsobit aktuální desku"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Tryska %s nemůže tisknout %s." msgstr "Tryska %s nemůže tisknout %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Tisk filamentu s míchanou barvou na tiskárně s jedním extruderem vyžaduje časté výměny filamentu a čištění, což může výrazně zvýšit množství odpadu a riziko ucpání trysky nebo odpadního skluzu."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Míchání %1% s %2% při tisku není doporučeno.\n" msgstr "Míchání %1% s %2% při tisku není doporučeno.\n"
@@ -8050,12 +8068,44 @@ msgstr "Synchronizovat seznam filamentů z AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Nastavit používané filamenty" msgstr "Nastavit používané filamenty"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Přidat míchaný filament"
# AI Translated
msgid "Mixed Filament"
msgstr "Míchaný filament"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Odebrat poslední míchaný filament"
# AI Translated
msgid "Add mixed filament"
msgstr "Přidat míchaný filament"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Míchaný filament má neplatné nebo neodpovídající komponenty. Upravte prosím dotčené položky znovu."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Hledat desku, objekt a díl." msgstr "Hledat desku, objekt a díl."
msgid "Pellets" msgid "Pellets"
msgstr "Pelety" msgstr "Pelety"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Míchaný filament má poškozené odkazy na komponenty"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Upravit / Smazat / Sloučit"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Cílový míchaný filament používá tento fyzický filament jako komponentu. Sloučením se tento fyzický filament odstraní a míchaný filament může přestat být platný. Pokračovat?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Po dokončení operace bude projekt %s uzavřen a bude vytvořen nový projekt." msgstr "Po dokončení operace bude projekt %s uzavřen a bude vytvořen nový projekt."
@@ -8193,7 +8243,13 @@ msgstr "Potvrďte prosím, že je G-code v těchto předvolbách bezpečný, aby
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Přizpůsobená předvolba" msgstr "Přizpůsobená předvolba"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Názvy komponent v souboru STEP nejsou ve formátu UTF-8!" msgstr "Názvy komponent v souboru STEP nejsou ve formátu UTF-8!"
# AI Translated # AI Translated
@@ -8216,7 +8272,7 @@ msgstr "Objem objektu je nula."
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Objekt ze souboru %s je příliš malý a může být v metrech nebo palcích.\n" "Objekt ze souboru %s je příliš malý a může být v metrech nebo palcích.\n"
"Chcete převést měřítko na milimetry?" "Chcete převést měřítko na milimetry?"
@@ -8237,6 +8293,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Detekován vícedílný objekt" msgstr "Detekován vícedílný objekt"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Přiřazování textur k filamentům"
# AI Translated
msgid "Texture Import Warning"
msgstr "Upozornění při importu textury"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Načíst tyto soubory jako jeden objekt s více částmi?\n" msgstr "Načíst tyto soubory jako jeden objekt s více částmi?\n"
@@ -8447,6 +8511,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Synchronizovat nyní" msgstr "Synchronizovat nyní"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Import textury se nezdařil. Zdá se, že model obsahuje data textury, ale proces importu nebylo možné dokončit. Model bude importován pouze jako geometrie."
# AI Translated
msgid "Applying texture colors..."
msgstr "Aplikují se barvy textury..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Aktualizuje se 3D náhled..."
# AI Translated
msgid "Texture colors applied."
msgstr "Barvy textury byly použity."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Upravené předvolby můžete ponechat v novém projektu nebo je zahodit" msgstr "Upravené předvolby můžete ponechat v novém projektu nebo je zahodit"
@@ -8579,6 +8659,17 @@ msgstr "Uložit rozřezaný soubor jako:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Soubor %s byl odeslán do úložiště tiskárny a lze jej zobrazit na tiskárně." msgstr "Soubor %s byl odeslán do úložiště tiskárny a lze jej zobrazit na tiskárně."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publikovat"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Typ trysky není nastaven. Nastavte prosím trysku a zkuste to znovu." msgstr "Typ trysky není nastaven. Nastavte prosím trysku a zkuste to znovu."
@@ -9728,6 +9819,10 @@ msgstr "Spirálová váza"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Pořadí filamentů v první vrstvě" msgstr "Pořadí filamentů v první vrstvě"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Seznam filamentů obsahuje míchané filamenty. Vlastní pořadí filamentů se neuplatní."
msgid "By Layer" msgid "By Layer"
msgstr "Podle vrstvy" msgstr "Podle vrstvy"
@@ -9756,9 +9851,6 @@ msgstr "Přejít na webovou stránku publikace modelu"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Poznámka: Příprava může trvat několik minut. Buďte prosím trpěliví." msgstr "Poznámka: Příprava může trvat několik minut. Buďte prosím trpěliví."
msgid "Publish"
msgstr "Publikovat"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Publikování bylo zrušeno" msgstr "Publikování bylo zrušeno"
@@ -9774,6 +9866,64 @@ msgstr "Nahrávání dat"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Přejít na webovou stránku" msgstr "Přejít na webovou stránku"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Uložit %s jako" msgstr "Uložit %s jako"
@@ -11133,12 +11283,12 @@ msgid "No modifications need to be copied."
msgstr "Není třeba kopírovat žádné úpravy." msgstr "Není třeba kopírovat žádné úpravy."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Kopírovat parametry" msgstr "Kopírovat parametry"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Upravit parametry %s" msgstr "Upravit parametry %s"
# AI Translated # AI Translated
@@ -11697,34 +11847,6 @@ msgstr "Objemy čištění při výměně filamentu"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Vyberte prosím barvu filamentu" msgstr "Vyberte prosím barvu filamentu"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Nativní živý náhled ve Waylandu vyžaduje video sink GStreamer GTK. Nainstalujte prosím plugin gtksink pro GStreamer a poté restartujte OrcaSlicer."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Nepodařilo se inicializovat nativní video sink GStreamer pro Wayland. Zkontrolujte prosím instalaci pluginu GStreamer GTK."
# AI Translated
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Pro tuto úlohu je vyžadován Windows Media Player! Chcete ve svém operačním systému povolit „Windows Media Player“?"
# AI Translated
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource nebyl správně zaregistrován pro přehrávání médií! Stisknutím Ano jej znovu zaregistrujete. Budete vyzváni dvakrát"
# AI Translated
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Chybí komponenta BambuSource registrovaná pro přehrávání médií! Přeinstalujte prosím OrcaSlicer nebo požádejte o pomoc komunitu."
# AI Translated
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Používá se BambuSource z jiné instalace, přehrávání videa nemusí fungovat správně! Stisknutím Ano to opravíte."
# AI Translated
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Ve vašem systému chybí kodeky H.264 pro GStreamer, které jsou nutné k přehrávání videa. (Zkuste nainstalovat balíčky gstreamer1.0-plugins-bad nebo gstreamer1.0-libav a poté restartovat Orca Slicer?)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Cloudový agent není dostupný. Restartujte prosím OrcaSlicer a zkuste to znovu." msgstr "Cloudový agent není dostupný. Restartujte prosím OrcaSlicer a zkuste to znovu."
@@ -12446,6 +12568,10 @@ msgstr "Pokud chcete přesto tisknout, můžete povolit možnost v Nastavení /
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Při aktuálním nastavení nejsou žádné extruze." msgstr "Při aktuálním nastavení nejsou žádné extruze."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Je použit míchaný filament s gradientem, ale 'Podvrstva míchané barvy' je vypnutá. Gradient nebude vytištěn."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Plynulý režim časosběru není podporován, pokud je povoleno pořadí tisku „podle objektu“." msgstr "Plynulý režim časosběru není podporován, pokud je povoleno pořadí tisku „podle objektu“."
@@ -12482,6 +12608,10 @@ msgstr "Možná budete chtít zmenšit velikost modelu nebo změnit aktuální n
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Proměnná výška vrstvy není podporována s organickými podporami." msgstr "Proměnná výška vrstvy není podporována s organickými podporami."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Filament věže na očištění trysky nemůže být míchaný filament."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Různé průměry trysek a filamentu nemusí správně fungovat, pokud je povolena základní věž. Jedná se o velmi experimentální funkci, proto pokračujte opatrně." msgstr "Různé průměry trysek a filamentu nemusí správně fungovat, pokud je povolena základní věž. Jedná se o velmi experimentální funkci, proto pokračujte opatrně."
@@ -12853,7 +12983,7 @@ msgstr "mm nebo %"
msgid "Other layers" msgid "Other layers"
msgstr "Ostatní vrstvy" msgstr "Ostatní vrstvy"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Teplota desky pro vrstvy kromě počáteční. Hodnota 0 znamená, že filament nepodporuje tisk na chladicí podložce SuperTack." msgstr "Teplota desky pro vrstvy kromě počáteční. Hodnota 0 znamená, že filament nepodporuje tisk na chladicí podložce SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14232,6 +14362,8 @@ msgstr "Čas vrstvy"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Ventilátor chlazení části bude spuštěn u vrstev, jejichž odhadovaný čas je kratší než tato hodnota. Rychlost ventilátoru je interpolována mezi minimální a maximální podle času tisku vrstvy." msgstr "Ventilátor chlazení části bude spuštěn u vrstev, jejichž odhadovaný čas je kratší než tato hodnota. Rychlost ventilátoru je interpolována mezi minimální a maximální podle času tisku vrstvy."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14540,6 +14672,62 @@ msgstr "Podpůrný materiál"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Podpůrný materiál se běžně používá pro tisk podpěr a rozhraní podpěr." msgstr "Podpůrný materiál se běžně používá pro tisk podpěr a rozhraní podpěr."
# AI Translated
msgid "Is mixed filament"
msgstr "Je míchaný filament"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Určuje, zda je tato pozice filamentu míchaným filamentem složeným z několika fyzických filamentů"
# AI Translated
msgid "Mixed filament components"
msgstr "Komponenty míchaného filamentu"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Čárkami oddělené indexy komponentních filamentů počítané od 1, např. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Poměry podvrstev míchaného filamentu"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Čárkami oddělené hodnoty poměrů, jejichž součet je 1.0, např. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Gradient míchaného filamentu"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Zapne režim gradientu ve směru Z pro podvrstvy míchaného filamentu. Je-li zapnutý, poměry podvrstev se mění lineárně napříč vrstvami."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Rozsah gradientu míchaného filamentu"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Počáteční a koncový poměr první komponenty v režimu gradientu. Dvojice oddělená čárkou, např. \"0.10,0.90\" znamená 10% až 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Křivka gradientu míchaného filamentu"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Volitelná vlastní křivka ve stylu Photoshopu, která mapuje postup v ose Z na poměr první komponenty. Zapisuje se jako řídicí body oddělené svislými čarami, buď ve tvaru \"x,y\" (starší formát), nebo \"x,y,m_in,m_out\", pokud je potřeba přepsat tečnu (prázdná hodnota nebo \"nan\" použije výchozí PCHIP). x je v intervalu [0,1]; y je omezeno na nastavený rozsah poměrů, např. \"0,0.15|0.5,0.50|1,0.85\". Pokud je pole prázdné, použije se lineární gradient_range."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Gradient míchaného filamentu podle dílu"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Je-li zapnutý režim gradientu, aplikuje gradient na každý díl sestavy samostatně místo toho, aby se celá sestava brala jako jeden rozsah Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Tisknutelný filament" msgstr "Tisknutelný filament"
@@ -15816,6 +16004,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Povolená maximální výstupní síla osy Y" msgstr "Povolená maximální výstupní síla osy Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15828,6 +16017,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Zatížení osy Y hmotností podložky stroje" msgstr "Zatížení osy Y hmotností podložky stroje"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16143,8 +16333,8 @@ msgstr "Počáteční a koncové body, které vedou z oblasti řezače do odpadk
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Snížit retrakci při výplni" msgstr "Snížit retrakci při výplni"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Neprovádět retrakci, pokud se přejezd nachází zcela uvnitř oblasti výplně. Případné vytékání materiálu tak nebude viditelné. To může snížit počet retrakčních pohybů u složitých modelů a zkrátit dobu tisku, ale zároveň zpomalit slicování a generování G-code. V oblastech, kde je retrakce přeskočena, se zároveň neprovádí ani z-hop." msgstr "Neprovádět retrakci, pokud se přejezd nachází zcela uvnitř oblasti výplně. Případné vytékání materiálu tak nebude viditelné. To může snížit počet retrakčních pohybů u složitých modelů a zkrátit dobu tisku, ale zároveň zpomalit slicování a generování G-code. V oblastech, kde je retrakce přeskočena, se zároveň neprovádí ani Z-hop."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "Tato možnost sníží teplotu neaktivních extruderů, aby se zabránilo vytékání." msgstr "Tato možnost sníží teplotu neaktivních extruderů, aby se zabránilo vytékání."
@@ -16317,7 +16507,7 @@ msgstr "Délka retrakce po očištění"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Délka rychlé retrakce po očištění, vztažená k délce retrakce.\n" "Délka rychlé retrakce po očištění, vztažená k délce retrakce.\n"
@@ -16364,7 +16554,7 @@ msgstr "Když je retrakce spuštěna před změnou nástroje, filament se zatáh
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Výška Z-hopu" msgstr "Výška Z-hopu"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Po každém stažení filamentu se tryska mírně zvedne, aby vznikla mezera mezi tryskou a tiskem. Zabrání kolizi trysky s tiskem při přesunu. Použití spirálových linií pro zvedání v ose Z může zabránit vytahování vláken." msgstr "Po každém stažení filamentu se tryska mírně zvedne, aby vznikla mezera mezi tryskou a tiskem. Zabrání kolizi trysky s tiskem při přesunu. Použití spirálových linií pro zvedání v ose Z může zabránit vytahování vláken."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17427,6 +17617,14 @@ msgstr ""
"\n" "\n"
"Nastavení hodnoty v parametru množství retrakce před očištěním níže provede případnou dodatečnou retrakci před očištěním, jinak bude provedena po něm." "Nastavení hodnoty v parametru množství retrakce před očištěním níže provede případnou dodatečnou retrakci před očištěním, jinak bude provedena po něm."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Podvrstva míchané barvy"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Zapne dělení na podvrstvy míchané barvy. Je-li zapnuto, vrstvy obsahující filamenty s míchanou barvou se rozdělí na podvrstvy, aby vznikl efekt míchání barev."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Čistící věž lze použít k odstranění zbytků materiálu na trysce a ke stabilizaci tlaku v komoře trysky, aby se předešlo vizuálním vadám při tisku objektů." msgstr "Čistící věž lze použít k odstranění zbytků materiálu na trysce a ke stabilizaci tlaku v komoře trysky, aby se předešlo vizuálním vadám při tisku objektů."
@@ -18500,6 +18698,10 @@ msgstr "Síťování modelového souboru selhalo nebo nebyl nalezen platný tvar
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Zadaný soubor nelze načíst, protože je prázdný." msgstr "Zadaný soubor nelze načíst, protože je prázdný."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Formát souboru není kompatibilní a nelze jej načíst."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Neznámý formát souboru. Vstupní soubor musí mít příponu .stl, .obj nebo .amf(.xml)." msgstr "Neznámý formát souboru. Vstupní soubor musí mít příponu .stl, .obj nebo .amf(.xml)."
@@ -19992,19 +20194,19 @@ msgstr "Zobrazit pouze názvy tiskáren se změnami v předvolbách tiskárny, f
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Zobrazit pouze názvy filamentů se změnami ve filamentových profilech." msgstr "Zobrazit pouze názvy filamentů se změnami ve filamentových profilech."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Zobrazí se pouze názvy tiskáren s uživatelskými předvolbami tiskárny, každá vybraná předvolba bude exportována jako zip archiv." msgstr "Zobrazí se pouze názvy tiskáren s uživatelskými předvolbami tiskárny, každá vybraná předvolba bude exportována jako zip archiv."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Zobrazí se pouze názvy filamentů s uživatelskými filamentovými profily. \n" "Zobrazí se pouze názvy filamentů s uživatelskými filamentovými profily. \n"
"Všechny uživatelské filamentové profily ve vybraných filamentech budou exportovány jako zip archiv." "Všechny uživatelské filamentové profily ve vybraných filamentech budou exportovány jako zip archiv."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Zobrazí se pouze názvy tiskáren se změněnými procesními předvolbami. \n" "Zobrazí se pouze názvy tiskáren se změněnými procesními předvolbami. \n"
"Všechny uživatelské procesní předvolby ve vybraných tiskárnách budou exportovány jako zip archiv." "Všechny uživatelské procesní předvolby ve vybraných tiskárnách budou exportovány jako zip archiv."
@@ -20250,7 +20452,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Pro diagnostiku zdroje problému potřebujeme informace. Podrobný návod najdete na stránce wiki." msgstr "Pro diagnostiku zdroje problému potřebujeme informace. Podrobný návod najdete na stránce wiki."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Tlačítko Zabalit shromáždí soubor projektu a protokoly aktuální relace do souboru zip." msgstr "Tlačítko Zabalit shromáždí soubor projektu a protokoly aktuální relace do souboru zip."
# AI Translated # AI Translated
@@ -20306,7 +20508,7 @@ msgid "Stored logs"
msgstr "Uložené protokoly" msgstr "Uložené protokoly"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Zabalí všechny uložené protokoly do souboru zip." msgstr "Zabalí všechny uložené protokoly do souboru zip."
# AI Translated # AI Translated
@@ -20394,8 +20596,8 @@ msgid "Authorizing..."
msgstr "Probíhá autorizace..." msgstr "Probíhá autorizace..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Chyba. Nelze získat api token pro autorizaci" msgstr "Chyba. Nelze získat API token pro autorizaci"
# AI Translated # AI Translated
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20851,8 +21053,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Povolit chytré přiřazení filamentu: přiřadit jeden filament více tryskám pro maximální úsporu" msgstr "Povolit chytré přiřazení filamentu: přiřadit jeden filament více tryskám pro maximální úsporu"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Úspora filamentu" msgstr "Ukládání souboru"
# AI Translated # AI Translated
msgid "Don't remind me again" msgid "Don't remind me again"
@@ -21207,6 +21409,15 @@ msgstr "Tuto akci nelze vrátit zpět. Pokračovat?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Přeskakování objektů." msgstr "Přeskakování objektů."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
# AI Translated # AI Translated
msgid "Select Filament" msgid "Select Filament"
msgstr "Vybrat filament" msgstr "Vybrat filament"
@@ -21308,6 +21519,9 @@ msgstr "Restartovat nyní"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "ŽÁDNÝ RAMMING" msgstr "ŽÁDNÝ RAMMING"
msgid "s"
msgstr "s"
# AI Translated # AI Translated
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Objemová rychlost" msgstr "Objemová rychlost"
@@ -21975,6 +22189,46 @@ msgstr ""
"Zamezte kroucení\n" "Zamezte kroucení\n"
"Víte, že při tisku materiálů náchylných ke kroucení, jako je ABS, může vhodné zvýšení teploty vyhřívané desky snížit pravděpodobnost kroucení?" "Víte, že při tisku materiálů náchylných ke kroucení, jako je ABS, může vhodné zvýšení teploty vyhřívané desky snížit pravděpodobnost kroucení?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Nativní živý náhled ve Waylandu vyžaduje video sink GStreamer GTK. Nainstalujte prosím plugin gtksink pro GStreamer a poté restartujte OrcaSlicer."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Nepodařilo se inicializovat nativní video sink GStreamer pro Wayland. Zkontrolujte prosím instalaci pluginu GStreamer GTK."
# AI Translated
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Pro tuto úlohu je vyžadován Windows Media Player! Chcete ve svém operačním systému povolit „Windows Media Player“?"
# AI Translated
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource nebyl správně zaregistrován pro přehrávání médií! Stisknutím Ano jej znovu zaregistrujete. Budete vyzváni dvakrát"
# AI Translated
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Chybí komponenta BambuSource registrovaná pro přehrávání médií! Přeinstalujte prosím OrcaSlicer nebo požádejte o pomoc komunitu."
# AI Translated
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Používá se BambuSource z jiné instalace, přehrávání videa nemusí fungovat správně! Stisknutím Ano to opravíte."
# AI Translated
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Ve vašem systému chybí kodeky H.264 pro GStreamer, které jsou nutné k přehrávání videa. (Zkuste nainstalovat balíčky gstreamer1.0-plugins-bad nebo gstreamer1.0-libav a poté restartovat Orca Slicer?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Úspora filamentu"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Heiko Liebscher <hliebschergmail.com>\n" "Last-Translator: Heiko Liebscher <hliebschergmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2917,6 +2917,10 @@ msgstr "Bearbeiten"
msgid "Merge with" msgid "Merge with"
msgstr "Zusammenführen mit" msgstr "Zusammenführen mit"
# AI Translated
msgid "Decompose Color"
msgstr "Farbe zerlegen"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Diesen Filament löschen" msgstr "Diesen Filament löschen"
@@ -3216,6 +3220,10 @@ msgstr "Zusammenbau"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Teile zu einem Objekt zusammenführen" msgstr "Teile zu einem Objekt zusammenführen"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Die Verwendung einer variablen Schichthöhe zusammen mit der Mischfarben-Unterschicht kann zu einer schlechten Farbmischqualität führen."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Schichten hinzufügen" msgstr "Schichten hinzufügen"
@@ -4757,7 +4765,7 @@ msgstr ""
"\n" "\n"
"Der Wert wird auf 0 zurückgesetzt." "Der Wert wird auf 0 zurückgesetzt."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Der alternative zusätzliche Wandmodus funktioniert nicht gut, wenn die vertikale Wanddicke auf Alle eingestellt ist." msgstr "Der alternative zusätzliche Wandmodus funktioniert nicht gut, wenn die vertikale Wanddicke auf Alle eingestellt ist."
msgid "" msgid ""
@@ -4803,7 +4811,7 @@ msgstr ""
"NEIN - unabhängige Stütz-Schichthöhen beibehalten" "NEIN - unabhängige Stütz-Schichthöhen beibehalten"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height muss kleiner als layer_height sein.\n" "seam_slope_start_height muss kleiner als layer_height sein.\n"
@@ -4811,7 +4819,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Die Verriegelungstiefe sollte kleiner als die Hauttiefe sein.\n" "Die Verriegelungstiefe sollte kleiner als die Hauttiefe sein.\n"
@@ -4851,6 +4859,9 @@ msgstr ""
"Ja - Diese Einstellungen ändern und den Spiralmodus automatisch aktivieren\n" "Ja - Diese Einstellungen ändern und den Spiralmodus automatisch aktivieren\n"
"Nein - Spiralmodus nicht aktivieren" "Nein - Spiralmodus nicht aktivieren"
msgid "N/A"
msgstr "Nicht verfügbar"
msgid "Printing" msgid "Printing"
msgstr "Drucken" msgstr "Drucken"
@@ -5310,9 +5321,6 @@ msgstr "Ungültiges Muster. Verwenden Sie N, N#K oder eine durch Kommas getrennt
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Ungültiges Format. Erwartetes Vektorformat: \"%1%\"" msgstr "Ungültiges Format. Erwartetes Vektorformat: \"%1%\""
msgid "N/A"
msgstr "Nicht verfügbar"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Systemagenten" msgstr "Systemagenten"
@@ -6266,16 +6274,22 @@ msgstr "Projekt speichern als"
msgid "Save current project as" msgid "Save current project as"
msgstr "Aktuelles Projekt speichern als" msgstr "Aktuelles Projekt speichern als"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importiere 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importiere 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Lade ein Modell" msgstr "Lade ein Modell"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Zip-Archiv importieren" msgstr "Zip-Archiv importieren"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Modelle aus einem Zip-Archiv laden" msgstr "Modelle aus einem Zip-Archiv laden"
msgid "Import Configs" msgid "Import Configs"
@@ -7791,6 +7805,10 @@ msgstr "Aktuelle Platte anpassen"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Die %s Düse kann %s nicht drucken." msgstr "Die %s Düse kann %s nicht drucken."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Der Druck von Mischfarben-Filament auf einem Drucker mit nur einem Extruder erfordert häufige Filamentwechsel und Spülvorgänge, was den Abfall und das Risiko einer Verstopfung von Düse bzw. Abfallschacht deutlich erhöhen kann."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Mischen von %1% mit %2% im Druck wird nicht empfohlen.\n" msgstr "Mischen von %1% mit %2% im Druck wird nicht empfohlen.\n"
@@ -7916,6 +7934,26 @@ msgstr "Filamentliste von AMS synchronisieren"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Zu verwendende Filamente einstellen" msgstr "Zu verwendende Filamente einstellen"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Mischfilament hinzufügen"
# AI Translated
msgid "Mixed Filament"
msgstr "Mischfilament"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Letztes Mischfilament entfernen"
# AI Translated
msgid "Add mixed filament"
msgstr "Mischfilament hinzufügen"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Das Mischfilament enthält ungültige oder nicht zusammenpassende Komponenten. Bitte bearbeiten Sie die betroffenen Einträge erneut."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Suche Platte, Objekt und Teil." msgstr "Suche Platte, Objekt und Teil."
@@ -7923,6 +7961,18 @@ msgstr "Suche Platte, Objekt und Teil."
msgid "Pellets" msgid "Pellets"
msgstr "Pellets" msgstr "Pellets"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Das Mischfilament enthält ungültige Komponentenverweise"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Bearbeiten / Löschen / Zusammenführen"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Das Ziel-Mischfilament verwendet dieses physische Filament als Komponente. Beim Zusammenführen wird dieses physische Filament entfernt und das Mischfilament kann dadurch ungültig werden. Fortfahren?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Nach Abschluss Ihrer Operation wird das %s-Projekt geschlossen und ein neues Projekt erstellt." msgstr "Nach Abschluss Ihrer Operation wird das %s-Projekt geschlossen und ein neues Projekt erstellt."
@@ -8063,8 +8113,14 @@ msgstr "Bitte bestätigen Sie, dass die G-Codes innerhalb dieser Profile sicher
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Benutzerdefinierte Profile" msgstr "Benutzerdefinierte Profile"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Der Name der Komponenten in der Step-Datei ist nicht im UTF8-Format!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Der Name der Komponenten in der Step-Datei ist nicht im UTF-8-Format!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "Aufgrund der nicht unterstützten Textkodierung können unbrauchbare Zeichen erscheinen!" msgstr "Aufgrund der nicht unterstützten Textkodierung können unbrauchbare Zeichen erscheinen!"
@@ -8085,10 +8141,10 @@ msgstr "Das Volumen des Objekts ist Null"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Das Objekt aus der Datei %s ist zu klein und vielleicht in Metern oder Zoll angeben.\n" "Das Objekt aus der Datei %s ist zu klein und vielleicht in Metern oder Zoll angeben.\n"
" Möchten Sie auf Millimeter skalieren?" "Möchten Sie auf Millimeter skalieren?"
msgid "Object too small" msgid "Object too small"
msgstr "Objekt zu klein" msgstr "Objekt zu klein"
@@ -8106,6 +8162,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Mehrteiliges Objekt erkannt" msgstr "Mehrteiliges Objekt erkannt"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Texturen werden den Filamenten zugeordnet"
# AI Translated
msgid "Texture Import Warning"
msgstr "Warnung beim Texturimport"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Diese Dateien als ein einziges Objekt mit mehreren Teilen laden?\n" msgstr "Diese Dateien als ein einziges Objekt mit mehreren Teilen laden?\n"
@@ -8319,6 +8383,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Jetzt synchronisieren" msgstr "Jetzt synchronisieren"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Der Texturimport ist fehlgeschlagen. Das Modell scheint Texturdaten zu enthalten, der Importvorgang konnte jedoch nicht abgeschlossen werden. Das Modell wird nur als Geometrie importiert."
# AI Translated
msgid "Applying texture colors..."
msgstr "Texturfarben werden angewendet..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3D-Ansicht wird aktualisiert..."
# AI Translated
msgid "Texture colors applied."
msgstr "Texturfarben angewendet."
# AI Translated # AI Translated
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Sie können die geänderten Profile für das neue Projekt beibehalten oder sie verwerfen" msgstr "Sie können die geänderten Profile für das neue Projekt beibehalten oder sie verwerfen"
@@ -8451,6 +8531,17 @@ msgstr "Geslicte Datei speichern unter:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Die Datei %s wurde an den Speicher des Druckers gesendet und kann auf dem Drucker angezeigt werden." msgstr "Die Datei %s wurde an den Speicher des Druckers gesendet und kann auf dem Drucker angezeigt werden."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Veröffentlichen"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Die Düsenart ist nicht eingestellt. Bitte stellen Sie die Düse ein und versuchen Sie es erneut." msgstr "Die Düsenart ist nicht eingestellt. Bitte stellen Sie die Düse ein und versuchen Sie es erneut."
@@ -9563,6 +9654,10 @@ msgstr "Vasenmodus"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Erste Filament-Schichtsequenz" msgstr "Erste Filament-Schichtsequenz"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Die Filamentliste enthält Mischfilamente. Die benutzerdefinierte Filamentreihenfolge wird nicht wirksam."
msgid "By Layer" msgid "By Layer"
msgstr "Nach Schicht" msgstr "Nach Schicht"
@@ -9590,9 +9685,6 @@ msgstr "Zur Modellveröffentlichungs-Webseite springen"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Hinweis: Die Vorbereitung kann einige Minuten dauern. Bitte haben Sie Geduld." msgstr "Hinweis: Die Vorbereitung kann einige Minuten dauern. Bitte haben Sie Geduld."
msgid "Publish"
msgstr "Veröffentlichen"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Veröffentlichung wurde abgebrochen" msgstr "Veröffentlichung wurde abgebrochen"
@@ -9608,6 +9700,64 @@ msgstr "Daten werden hochgeladen"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Zu einer Website springen" msgstr "Zu einer Website springen"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "%s speichern als" msgstr "%s speichern als"
@@ -10940,11 +11090,11 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Es müssen keine Änderungen kopiert werden." msgstr "Es müssen keine Änderungen kopiert werden."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Parameter kopieren" msgstr "Parameter kopieren"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Parameter von %s ändern" msgstr "Parameter von %s ändern"
#, c-format, boost-format #, c-format, boost-format
@@ -11460,27 +11610,6 @@ msgstr "Reinigungsvolumen für Filamentwechsel"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Bitte wählen Sie die Filamentfarbe" msgstr "Bitte wählen Sie die Filamentfarbe"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Native Wayland Liveview erfordert das GStreamer GTK Video Sink. Bitte installieren Sie das gtksink-Plugin für GStreamer und starten Sie OrcaSlicer neu."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Fehler beim Initialisieren des nativen Wayland GStreamer Video Sinks. Bitte überprüfen Ihre GStreamer GTK-Plugin-Installation."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Windows Media Player wird für diese Aufgabe benötigt! Möchten Sie 'Windows Media Player' für Ihr Betriebssystem aktivieren?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource wurde nicht korrekt für das Abspielen von Medien registriert! Drücken Sie Ja, um es erneut zu registrieren. Sie werden zweimal aufgefordert"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Fehlende BambuSource-Komponente, die für das Abspielen von Medien registriert ist! Bitte installieren Sie OrcaSlicer neu oder suchen Sie Hilfe in der Community."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Verwendung eines BambuSource aus einer anderen Installation, das Abspielen von Videos funktioniert möglicherweise nicht korrekt! Drücken Sie Ja, um es zu beheben."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Ihr System fehlt H.264-Codecs für GStreamer, die zum Abspielen von Videos erforderlich sind. (Versuchen Sie, die Pakete gstreamer1.0-plugins-bad oder gstreamer1.0-libav zu installieren und starten Sie Orca Slicer neu?)"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Cloud-Agent ist nicht verfügbar. Bitte starten Sie OrcaSlicer neu und versuchen Sie es erneut." msgstr "Cloud-Agent ist nicht verfügbar. Bitte starten Sie OrcaSlicer neu und versuchen Sie es erneut."
@@ -12185,6 +12314,10 @@ msgstr "Wenn Sie trotzdem drucken möchten, können Sie die Option in Einstellun
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Keine Extrusion unter den aktuellen Einstellungen." msgstr "Keine Extrusion unter den aktuellen Einstellungen."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Es wird ein Mischfilament mit Verlauf verwendet, aber „Mischfarben-Unterschicht“ ist deaktiviert. Der Verlauf wird nicht gedruckt."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Der gewählte Zeitraffermodus wird nicht unterstützt, wenn die Sequenz \"nach Objekt\" aktiviert ist." msgstr "Der gewählte Zeitraffermodus wird nicht unterstützt, wenn die Sequenz \"nach Objekt\" aktiviert ist."
@@ -12221,6 +12354,10 @@ msgstr "Sie möchten möglicherweise die Größe Ihres Modells reduzieren oder d
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Variable Schichthöhe wird nicht mit organischen Stützstrukturen unterstützt." msgstr "Variable Schichthöhe wird nicht mit organischen Stützstrukturen unterstützt."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Das Filament des Reinigungsturms darf kein Mischfilament sein."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Unterschiedliche Düsendurchmesser und unterschiedliche Filamentdurchmesser funktionieren möglicherweise nicht gut, wenn der Reinigungsturm aktiviert ist. Es ist sehr experimentell, also gehen Sie bitte vorsichtig vor." msgstr "Unterschiedliche Düsendurchmesser und unterschiedliche Filamentdurchmesser funktionieren möglicherweise nicht gut, wenn der Reinigungsturm aktiviert ist. Es ist sehr experimentell, also gehen Sie bitte vorsichtig vor."
@@ -12570,7 +12707,7 @@ msgstr "mm o. %"
msgid "Other layers" msgid "Other layers"
msgstr "Andere Schichten" msgstr "Andere Schichten"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Dies ist die Betttemperatur für Schichten mit Ausnahme der Ersten. Ein Wert von 0 bedeutet, dass das Filament auf der kalten Druckplatte SuperTack nicht unterstützt wird." msgstr "Dies ist die Betttemperatur für Schichten mit Ausnahme der Ersten. Ein Wert von 0 bedeutet, dass das Filament auf der kalten Druckplatte SuperTack nicht unterstützt wird."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13934,6 +14071,8 @@ msgstr "Schichtdauer"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Der Bauteillüfter wird für Schichten aktiviert, deren geschätzte Zeit kürzer als dieser Wert ist. Die Lüftergeschwindigkeit wird zwischen der minimalen und maximalen Geschwindigkeit entsprechend der Druckzeit der Schicht interpoliert." msgstr "Der Bauteillüfter wird für Schichten aktiviert, deren geschätzte Zeit kürzer als dieser Wert ist. Die Lüftergeschwindigkeit wird zwischen der minimalen und maximalen Geschwindigkeit entsprechend der Druckzeit der Schicht interpoliert."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14238,6 +14377,62 @@ msgstr "Stützmaterial"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Stützmaterial wird üblicherweise zum Drucken von Stützen und Stütz-Schnittstellen verwendet." msgstr "Stützmaterial wird üblicherweise zum Drucken von Stützen und Stütz-Schnittstellen verwendet."
# AI Translated
msgid "Is mixed filament"
msgstr "Ist Mischfilament"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Gibt an, ob dieser Filamentplatz ein Mischfilament aus mehreren physischen Filamenten ist"
# AI Translated
msgid "Mixed filament components"
msgstr "Komponenten des Mischfilaments"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Durch Kommas getrennte Indizes der Komponentenfilamente, beginnend bei 1, z. B. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Unterschicht-Anteile des Mischfilaments"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Durch Kommas getrennte Anteilswerte, die in der Summe 1.0 ergeben, z. B. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Verlauf des Mischfilaments"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Aktiviert den Verlaufsmodus in Z-Richtung für die Unterschichten des Mischfilaments. Wenn aktiviert, ändern sich die Anteile der Unterschichten linear über die Schichten hinweg."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Verlaufsbereich des Mischfilaments"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Start- und Endanteil der ersten Komponente im Verlaufsmodus. Durch Komma getrenntes Paar, z. B. \"0.10,0.90\" bedeutet 10% bis 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Verlaufskurve des Mischfilaments"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Optionale benutzerdefinierte Kurve im Photoshop-Stil, die den Z-Fortschritt auf den Anteil der ersten Komponente abbildet. Kodiert als durch senkrechte Striche getrennte Kontrollpunkte, entweder \"x,y\" (veraltet) oder \"x,y,m_in,m_out\", wenn die Tangente überschrieben werden soll (ein leerer Wert oder \"nan\" verwendet den PCHIP-Standard). x liegt in [0,1]; y wird auf den konfigurierten Anteilsbereich begrenzt, z. B. \"0,0.15|0.5,0.50|1,0.85\". Bleibt das Feld leer, wird stattdessen der lineare gradient_range verwendet."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Verlauf pro Teil beim Mischfilament"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Wenn der Verlaufsmodus aktiviert ist, wird der Verlauf auf jedes Teil eines Zusammenbaus einzeln angewendet, anstatt den gesamten Zusammenbau als einen einzigen Z-Bereich zu behandeln."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament druckbar" msgstr "Filament druckbar"
@@ -15478,6 +15673,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Die maximal zulässige Ausgangskraft der Y-Achse" msgstr "Die maximal zulässige Ausgangskraft der Y-Achse"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15488,6 +15684,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Die Maschinenbett-Massenlast der Y-Achse" msgstr "Die Maschinenbett-Massenlast der Y-Achse"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15802,7 +15999,7 @@ msgstr "Die Start- und Endpunkte, vom Schnittbereich bis zum Auswurfschacht."
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Rückzug bei der Füllung verringern" msgstr "Rückzug bei der Füllung verringern"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Kein Rückzug, wenn sich die Bewegung des Druckkopfes vollständig in einem Füllbereich befindet. Das bedeutet, dass das herauslaufen des Filaments nicht zu sehen ist. Dies kann die Zeit für das zurückziehen des Filaments bei komplexeren Modellen verkürzen und Druckzeit sparen, verlangsamt aber das Slicen und die G-Code Generierung." msgstr "Kein Rückzug, wenn sich die Bewegung des Druckkopfes vollständig in einem Füllbereich befindet. Das bedeutet, dass das herauslaufen des Filaments nicht zu sehen ist. Dies kann die Zeit für das zurückziehen des Filaments bei komplexeren Modellen verkürzen und Druckzeit sparen, verlangsamt aber das Slicen und die G-Code Generierung."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -15972,7 +16169,7 @@ msgstr "Rückzugsmenge nach dem Wischen"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Die Länge des schnellen Rückzugs nach dem Wischen, relativ zur Rückzugslänge.\n" "Die Länge des schnellen Rückzugs nach dem Wischen, relativ zur Rückzugslänge.\n"
@@ -16019,7 +16216,7 @@ msgstr "Wenn vor einem Werkzeugwechsel ein Rückzug ausgelöst wird, wird das Fi
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z-Hub-Höhe" msgstr "Z-Hub-Höhe"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Bei jedem Rückzug wird die Düse ein wenig angehoben, um einen Abstand zwischen Düse und Druck zu schaffen. Dadurch wird verhindert, dass die Düse bei der Verfahrbewegung gegen den Druck stößt. Die Verwendung einer Spirallinie zum Anheben von z kann Fadenbildung verhindern." msgstr "Bei jedem Rückzug wird die Düse ein wenig angehoben, um einen Abstand zwischen Düse und Druck zu schaffen. Dadurch wird verhindert, dass die Düse bei der Verfahrbewegung gegen den Druck stößt. Die Verwendung einer Spirallinie zum Anheben von z kann Fadenbildung verhindern."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17070,6 +17267,14 @@ msgstr ""
"\n" "\n"
"Wenn ein Wert in der Einstellung \"Rückzugsmenge vor dem Wischen\" unten angegeben ist, wird ein überschüssiger Rückzug vor dem Wischen ausgeführt, ansonsten wird er danach ausgeführt." "Wenn ein Wert in der Einstellung \"Rückzugsmenge vor dem Wischen\" unten angegeben ist, wird ein überschüssiger Rückzug vor dem Wischen ausgeführt, ansonsten wird er danach ausgeführt."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Mischfarben-Unterschicht"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Aktiviert die Aufteilung in Mischfarben-Unterschichten. Wenn aktiviert, werden Schichten mit Mischfarben-Filamenten in Unterschichten aufgeteilt, um Farbmischeffekte zu erzielen."
# AI Translated # AI Translated
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Der Reinigungsturm kann verwendet werden, um Rückstände auf der Düse zu entfernen und den Kammerdruck im Inneren der Düse zu stabilisieren, um Erscheinungsdefekte beim Drucken von Objekten zu vermeiden." msgstr "Der Reinigungsturm kann verwendet werden, um Rückstände auf der Düse zu entfernen und den Kammerdruck im Inneren der Düse zu stabilisieren, um Erscheinungsdefekte beim Drucken von Objekten zu vermeiden."
@@ -18140,6 +18345,10 @@ msgstr "Das Erstellen eines Netzes aus der Modelldatei ist fehlgeschlagen oder e
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Die angegebene Datei konnte nicht gelesen werden, weil sie leer ist." msgstr "Die angegebene Datei konnte nicht gelesen werden, weil sie leer ist."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Das Dateiformat ist nicht kompatibel und kann nicht gelesen werden."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Unbekanntes Dateiformat: Die Eingabedatei muss die Endung .stl, .obj oder .amf(.xml) haben." msgstr "Unbekanntes Dateiformat: Die Eingabedatei muss die Endung .stl, .obj oder .amf(.xml) haben."
@@ -19600,19 +19809,19 @@ msgstr "Nur Druckernamen mit Änderungen an Drucker-, Filament- und Prozessprofi
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Nur die Filamentnamen mit Änderungen an den Filamentprofilen werden angezeigt." msgstr "Nur die Filamentnamen mit Änderungen an den Filamentprofilen werden angezeigt."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Nur Druckernamen mit Benutzerdruckerprofilen werden angezeigt, und jedes Profil, das Sie auswählen, wird als ZIP exportiert." msgstr "Nur Druckernamen mit Benutzerdruckerprofilen werden angezeigt, und jedes Profil, das Sie auswählen, wird als ZIP exportiert."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Nur die Filamentnamen mit Benutzerfilamentvorlagen werden angezeigt, \n" "Nur die Filamentnamen mit Benutzerfilamentvorlagen werden angezeigt, \n"
"und alle Benutzerfilamentvorlagen in jedem Filamentnamen, den Sie auswählen, " "und alle Benutzerfilamentvorlagen in jedem Filamentnamen, den Sie auswählen, "
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Nur Druckernamen mit geänderten Prozessvorlagen werden angezeigt, \n" "Nur Druckernamen mit geänderten Prozessvorlagen werden angezeigt, \n"
"und alle Benutzerprozessvorlagen in jedem Druckernamen, den Sie auswählen, werden als ZIP exportiert." "und alle Benutzerprozessvorlagen in jedem Druckernamen, den Sie auswählen, werden als ZIP exportiert."
@@ -19841,7 +20050,7 @@ msgstr "Systeminformationen in die Zwischenablage kopieren"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Wir benötigen Informationen zur Diagnose der Ursache des Problems. Überprüfen Sie die Wiki-Seite für eine detaillierte Anleitung." msgstr "Wir benötigen Informationen zur Diagnose der Ursache des Problems. Überprüfen Sie die Wiki-Seite für eine detaillierte Anleitung."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Die Schaltfläche „Packen“ sammelt die Projektdatei und Protokolle der aktuellen Sitzung in einer ZIP-Datei." msgstr "Die Schaltfläche „Packen“ sammelt die Projektdatei und Protokolle der aktuellen Sitzung in einer ZIP-Datei."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -19883,7 +20092,7 @@ msgstr "Protokollstufe"
msgid "Stored logs" msgid "Stored logs"
msgstr "Gespeicherte Protokolle" msgstr "Gespeicherte Protokolle"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Packt alle gespeicherten Protokolle in eine ZIP-Datei." msgstr "Packt alle gespeicherten Protokolle in eine ZIP-Datei."
msgid "Profiles" msgid "Profiles"
@@ -19950,7 +20159,7 @@ msgstr "Druckertyp nicht gefunden, bitte manuell auswählen."
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Autorisierung..." msgstr "Autorisierung..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Fehler. Kann kein API-Token für die Autorisierung erhalten" msgstr "Fehler. Kann kein API-Token für die Autorisierung erhalten"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20398,8 +20607,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Intelligente Filamentzuweisung aktivieren: Ein Filament mehreren Düsen zuweisen, um Einsparungen zu maximieren" msgstr "Intelligente Filamentzuweisung aktivieren: Ein Filament mehreren Düsen zuweisen, um Einsparungen zu maximieren"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Filamentersparnis" msgstr "Datei speichern"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Nicht mehr erinnern" msgstr "Nicht mehr erinnern"
@@ -20685,6 +20894,15 @@ msgstr "Diese Aktion kann nicht rückgängig gemacht werden. Fortsetzen?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Objekte werden übersprungen." msgstr "Objekte werden übersprungen."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Filament auswählen" msgstr "Filament auswählen"
@@ -20764,6 +20982,9 @@ msgstr "Jetzt neu starten"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "KEIN RAMMING ÜBERALL" msgstr "KEIN RAMMING ÜBERALL"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Volumetrische Geschwindigkeit" msgstr "Volumetrische Geschwindigkeit"
@@ -21388,6 +21609,39 @@ msgstr ""
"Verwerfungen vermeiden\n" "Verwerfungen vermeiden\n"
"Wussten Sie, dass beim Drucken von Materialien, die zu Verwerfungen neigen, wie z.B. ABS, durch eine entsprechende Erhöhung der Heizbetttemperatur die Wahrscheinlichkeit von Verwerfungen verringert werden kann?" "Wussten Sie, dass beim Drucken von Materialien, die zu Verwerfungen neigen, wie z.B. ABS, durch eine entsprechende Erhöhung der Heizbetttemperatur die Wahrscheinlichkeit von Verwerfungen verringert werden kann?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Native Wayland Liveview erfordert das GStreamer GTK Video Sink. Bitte installieren Sie das gtksink-Plugin für GStreamer und starten Sie OrcaSlicer neu."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Fehler beim Initialisieren des nativen Wayland GStreamer Video Sinks. Bitte überprüfen Ihre GStreamer GTK-Plugin-Installation."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Windows Media Player wird für diese Aufgabe benötigt! Möchten Sie 'Windows Media Player' für Ihr Betriebssystem aktivieren?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource wurde nicht korrekt für das Abspielen von Medien registriert! Drücken Sie Ja, um es erneut zu registrieren. Sie werden zweimal aufgefordert"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Fehlende BambuSource-Komponente, die für das Abspielen von Medien registriert ist! Bitte installieren Sie OrcaSlicer neu oder suchen Sie Hilfe in der Community."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Verwendung eines BambuSource aus einer anderen Installation, das Abspielen von Videos funktioniert möglicherweise nicht korrekt! Drücken Sie Ja, um es zu beheben."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Ihr System fehlt H.264-Codecs für GStreamer, die zum Abspielen von Videos erforderlich sind. (Versuchen Sie, die Pakete gstreamer1.0-plugins-bad oder gstreamer1.0-libav zu installieren und starten Sie Orca Slicer neu?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Filamentersparnis"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-06-17 15:44-0300\n" "PO-Revision-Date: 2026-06-17 15:44-0300\n"
"Last-Translator: Alexandre Folle de Menezes\n" "Last-Translator: Alexandre Folle de Menezes\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2758,6 +2758,9 @@ msgstr ""
msgid "Merge with" msgid "Merge with"
msgstr "" msgstr ""
msgid "Decompose Color"
msgstr ""
msgid "Delete this filament" msgid "Delete this filament"
msgstr "" msgstr ""
@@ -3035,6 +3038,9 @@ msgstr ""
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "" msgstr ""
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr ""
msgid "Add layers" msgid "Add layers"
msgstr "" msgstr ""
@@ -4493,7 +4499,7 @@ msgid ""
"The value will be reset to 0." "The value will be reset to 0."
msgstr "" msgstr ""
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "" msgstr ""
msgid "" msgid ""
@@ -4524,13 +4530,13 @@ msgid ""
msgstr "" msgstr ""
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
@@ -4561,6 +4567,9 @@ msgid ""
"No - Cancel enabling spiral mode" "No - Cancel enabling spiral mode"
msgstr "" msgstr ""
msgid "N/A"
msgstr ""
msgid "Printing" msgid "Printing"
msgstr "" msgstr ""
@@ -5009,9 +5018,6 @@ msgstr ""
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "" msgstr ""
msgid "N/A"
msgstr ""
msgid "System agents" msgid "System agents"
msgstr "" msgstr ""
@@ -5941,16 +5947,22 @@ msgstr ""
msgid "Save current project as" msgid "Save current project as"
msgstr "" msgstr ""
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "" msgstr ""
msgid "Load a model" msgid "Load a model"
msgstr "" msgstr ""
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "" msgstr ""
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "" msgstr ""
msgid "Import Configs" msgid "Import Configs"
@@ -7399,6 +7411,9 @@ msgstr ""
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "" msgstr ""
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr ""
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "" msgstr ""
@@ -7519,12 +7534,36 @@ msgstr ""
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "" msgstr ""
msgid "Add Mixed Filament"
msgstr ""
msgid "Mixed Filament"
msgstr ""
msgid "Remove last mixed filament"
msgstr ""
msgid "Add mixed filament"
msgstr ""
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr ""
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "" msgstr ""
msgid "Pellets" msgid "Pellets"
msgstr "" msgstr ""
msgid "Mixed filament has broken component references"
msgstr ""
msgid "Edit / Delete / Merge"
msgstr ""
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "" msgstr ""
@@ -7659,7 +7698,13 @@ msgstr ""
msgid "Customized Preset" msgid "Customized Preset"
msgstr "" msgstr ""
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "" msgstr ""
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -7681,7 +7726,7 @@ msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
msgid "Object too small" msgid "Object too small"
@@ -7696,6 +7741,12 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "" msgstr ""
msgid "Matching textures to filaments"
msgstr ""
msgid "Texture Import Warning"
msgstr ""
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "" msgstr ""
@@ -7890,6 +7941,18 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "" msgstr ""
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr ""
msgid "Applying texture colors..."
msgstr ""
msgid "Updating 3D view..."
msgstr ""
msgid "Texture colors applied."
msgstr ""
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "" msgstr ""
@@ -8019,6 +8082,17 @@ msgstr ""
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "" msgstr ""
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr ""
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "" msgstr ""
@@ -9039,6 +9113,9 @@ msgstr ""
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "" msgstr ""
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr ""
msgid "By Layer" msgid "By Layer"
msgstr "" msgstr ""
@@ -9066,9 +9143,6 @@ msgstr ""
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "" msgstr ""
msgid "Publish"
msgstr ""
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "" msgstr ""
@@ -9084,6 +9158,64 @@ msgstr ""
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "" msgstr ""
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "" msgstr ""
@@ -10325,11 +10457,11 @@ msgstr ""
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "" msgstr ""
msgid "Copy paramters" msgid "Copy parameters"
msgstr "" msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "" msgstr ""
#, c-format, boost-format #, c-format, boost-format
@@ -10803,27 +10935,6 @@ msgstr ""
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "" msgstr ""
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr ""
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr ""
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr ""
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr ""
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr ""
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr ""
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr ""
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "" msgstr ""
@@ -11506,6 +11617,9 @@ msgstr ""
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "" msgstr ""
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr ""
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "" msgstr ""
@@ -11542,6 +11656,9 @@ msgstr ""
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "" msgstr ""
msgid "The wipe tower filament cannot be a mixed filament."
msgstr ""
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "" msgstr ""
@@ -11870,7 +11987,7 @@ msgstr ""
msgid "Other layers" msgid "Other layers"
msgstr "" msgstr ""
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "" msgstr ""
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -12954,6 +13071,7 @@ msgstr ""
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "" msgstr ""
msgctxt "second"
msgid "s" msgid "s"
msgstr "" msgstr ""
@@ -13247,6 +13365,48 @@ msgstr ""
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "" msgstr ""
msgid "Is mixed filament"
msgstr ""
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr ""
msgid "Mixed filament components"
msgstr ""
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr ""
msgid "Mixed filament sublayer ratios"
msgstr ""
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr ""
msgid "Mixed filament gradient"
msgstr ""
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr ""
msgid "Mixed filament gradient range"
msgstr ""
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr ""
msgid "Mixed filament gradient curve"
msgstr ""
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr ""
msgid "Mixed filament per-part gradient"
msgstr ""
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr ""
msgid "Filament printable" msgid "Filament printable"
msgstr "" msgstr ""
@@ -14394,6 +14554,7 @@ msgstr ""
msgid "The allowed maximum output force of Y axis" msgid "The allowed maximum output force of Y axis"
msgstr "" msgstr ""
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "" msgstr ""
@@ -14403,6 +14564,7 @@ msgstr ""
msgid "The machine bed mass load of Y axis" msgid "The machine bed mass load of Y axis"
msgstr "" msgstr ""
msgctxt "gram"
msgid "g" msgid "g"
msgstr "" msgstr ""
@@ -14671,7 +14833,7 @@ msgstr ""
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "" msgstr ""
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "" msgstr ""
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -14827,7 +14989,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
@@ -14870,7 +15032,7 @@ msgstr ""
msgid "Z-hop height" msgid "Z-hop height"
msgstr "" msgstr ""
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "" msgstr ""
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -15830,6 +15992,12 @@ msgid ""
"Setting a value in the retract amount before wipe setting below will perform any excess retraction before the wipe, else it will be performed after." "Setting a value in the retract amount before wipe setting below will perform any excess retraction before the wipe, else it will be performed after."
msgstr "" msgstr ""
msgid "Mixed color sublayer"
msgstr ""
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr ""
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "" msgstr ""
@@ -16857,6 +17025,9 @@ msgstr ""
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "" msgstr ""
msgid "The file format is incompatible and cannot be parsed."
msgstr ""
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "" msgstr ""
@@ -18187,17 +18358,17 @@ msgstr ""
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "" msgstr ""
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "" msgstr ""
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
msgid "Please select at least one printer or filament." msgid "Please select at least one printer or filament."
@@ -18412,7 +18583,7 @@ msgstr ""
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "" msgstr ""
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "" msgstr ""
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -18454,7 +18625,7 @@ msgstr ""
msgid "Stored logs" msgid "Stored logs"
msgstr "" msgstr ""
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "" msgstr ""
msgid "Profiles" msgid "Profiles"
@@ -18519,7 +18690,7 @@ msgstr ""
msgid "Authorizing..." msgid "Authorizing..."
msgstr "" msgstr ""
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "" msgstr ""
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -18957,7 +19128,7 @@ msgstr ""
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "" msgstr ""
msgid "Fila Saving" msgid "File Saving"
msgstr "" msgstr ""
msgid "Don't remind me again" msgid "Don't remind me again"
@@ -19240,6 +19411,15 @@ msgstr ""
msgid "Skipping objects." msgid "Skipping objects."
msgstr "" msgstr ""
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "" msgstr ""
@@ -19317,6 +19497,9 @@ msgstr ""
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "" msgstr ""
msgid "s"
msgstr ""
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "" msgstr ""

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Ian A. Bassi <>\n" "Last-Translator: Ian A. Bassi <>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2832,6 +2832,9 @@ msgstr "Editar"
msgid "Merge with" msgid "Merge with"
msgstr "Fusionar con" msgstr "Fusionar con"
msgid "Decompose Color"
msgstr "Descomponer color"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Eliminar este filamento" msgstr "Eliminar este filamento"
@@ -3113,6 +3116,9 @@ msgstr "Ensamblaje"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Fusionar piezas en un objeto" msgstr "Fusionar piezas en un objeto"
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Usar altura de capa variable junto con la subcapa de color mezclado puede reducir la calidad de la mezcla de colores."
msgid "Add layers" msgid "Add layers"
msgstr "Añadir capas" msgstr "Añadir capas"
@@ -4629,7 +4635,7 @@ msgstr ""
"\n" "\n"
"El valor se restablecerá a 0." "El valor se restablecerá a 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Perímetro adicional alternado no funciona bien cuando \"Garantizar el grosor vertical de las cubiertas\" se establece en Todos." msgstr "Perímetro adicional alternado no funciona bien cuando \"Garantizar el grosor vertical de las cubiertas\" se establece en Todos."
msgid "" msgid ""
@@ -4675,7 +4681,7 @@ msgstr ""
"NO - Mantener la altura de capa de soportes independiente" "NO - Mantener la altura de capa de soportes independiente"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height debe ser menor que layer_height.\n" "seam_slope_start_height debe ser menor que layer_height.\n"
@@ -4683,7 +4689,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"La profundidad de bloqueo debe ser menor que la profundidad de piel.\n" "La profundidad de bloqueo debe ser menor que la profundidad de piel.\n"
@@ -4723,6 +4729,9 @@ msgstr ""
"Sí - Cambiar estos ajustes y activar el modo espiral automáticamente\n" "Sí - Cambiar estos ajustes y activar el modo espiral automáticamente\n"
"No - Dejar de usar el modo espiral esta vez" "No - Dejar de usar el modo espiral esta vez"
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Imprimiendo" msgstr "Imprimiendo"
@@ -5176,9 +5185,6 @@ msgstr "Patrón inválido. Use N, N#K, o una lista separada por comas con #K opc
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Formato inválido. Formato de vector esperado: \"%1%\"" msgstr "Formato inválido. Formato de vector esperado: \"%1%\""
msgid "N/A"
msgstr "N/A"
msgid "System agents" msgid "System agents"
msgstr "Agentes del sistema" msgstr "Agentes del sistema"
@@ -6123,16 +6129,22 @@ msgstr "Guardar proyecto como"
msgid "Save current project as" msgid "Save current project as"
msgstr "Guardar el proyecto actual como" msgstr "Guardar el proyecto actual como"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importar 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importar 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Cargar un modelo" msgstr "Cargar un modelo"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importar archivo Zip" msgstr "Importar archivo Zip"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Cargar modelos contenidos en un archivo zip" msgstr "Cargar modelos contenidos en un archivo zip"
msgid "Import Configs" msgid "Import Configs"
@@ -7613,6 +7625,9 @@ msgstr "Personalizar cama actual"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "La boquilla %s no puede imprimir %s." msgstr "La boquilla %s no puede imprimir %s."
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Imprimir filamento de color mezclado en una impresora de un solo extrusor requiere cambios de filamento y purgas frecuentes, lo que puede aumentar considerablemente el desperdicio y el riesgo de obstrucción de la boquilla o del conducto de residuos."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "No se recomienda mezclar %1% con %2% en la impresión.\n" msgstr "No se recomienda mezclar %1% con %2% en la impresión.\n"
@@ -7735,12 +7750,36 @@ msgstr "Sicronizar filamentos de la lista AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Elegir filamentos para usar" msgstr "Elegir filamentos para usar"
msgid "Add Mixed Filament"
msgstr "Añadir filamento mixto"
msgid "Mixed Filament"
msgstr "Filamento mixto"
msgid "Remove last mixed filament"
msgstr "Eliminar el último filamento mixto"
msgid "Add mixed filament"
msgstr "Añadir filamento mixto"
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "El filamento mixto tiene componentes no válidos o incoherentes. Vuelva a editar las entradas afectadas."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Buscar cama, objeto y parte." msgstr "Buscar cama, objeto y parte."
msgid "Pellets" msgid "Pellets"
msgstr "Pellets" msgstr "Pellets"
msgid "Mixed filament has broken component references"
msgstr "El filamento mixto tiene referencias de componentes rotas"
msgid "Edit / Delete / Merge"
msgstr "Editar / Borrar / Fusionar"
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "El filamento mixto de destino usa este filamento físico como componente. Al fusionarlos se eliminará este filamento físico y el filamento mixto puede quedar no válido. ¿Continuar?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Al completar la operación, el proyecto %s se cerrará y se creará un nuevo proyecto." msgstr "Al completar la operación, el proyecto %s se cerrará y se creará un nuevo proyecto."
@@ -7877,8 +7916,14 @@ msgstr "¡Por favor, confirme que el G-Code dentro de los perfiles son seguros p
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Perfil Personalizado" msgstr "Perfil Personalizado"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "¡El nombre de los componentes dentro del archivo de pasos no tiene formato UTF8!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "¡El nombre de los componentes dentro del archivo de pasos no tiene formato UTF-8!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "¡El nombre puede mostrar caracteres no válidos!" msgstr "¡El nombre puede mostrar caracteres no válidos!"
@@ -7899,10 +7944,10 @@ msgstr "El volumen del objeto es cero"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"El objeto del archivo %s es demasiado pequeño, tal vez en metros o pulgadas.\n" "El objeto del archivo %s es demasiado pequeño, tal vez en metros o pulgadas.\n"
" ¿Quiere escalar a milímetros?" "¿Quiere escalar a milímetros?"
msgid "Object too small" msgid "Object too small"
msgstr "Objeto demasiado pequeño" msgstr "Objeto demasiado pequeño"
@@ -7919,6 +7964,12 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Objeto multipieza detectado" msgstr "Objeto multipieza detectado"
msgid "Matching textures to filaments"
msgstr "Asociando texturas a los filamentos"
msgid "Texture Import Warning"
msgstr "Aviso de importación de texturas"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "¿Cargar estos archivos como un objeto único con múltiples piezas?\n" msgstr "¿Cargar estos archivos como un objeto único con múltiples piezas?\n"
@@ -8123,6 +8174,18 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Sincronizar ahora" msgstr "Sincronizar ahora"
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "No se ha podido importar la textura. El modelo parece contener datos de textura, pero no se ha podido completar el proceso de importación. El modelo se importará solo como geometría."
msgid "Applying texture colors..."
msgstr "Aplicando colores de textura..."
msgid "Updating 3D view..."
msgstr "Actualizando la vista 3D..."
msgid "Texture colors applied."
msgstr "Colores de textura aplicados."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Puedes mantener los perfiles modificados en el nuevo proyecto o descartarlos" msgstr "Puedes mantener los perfiles modificados en el nuevo proyecto o descartarlos"
@@ -8254,6 +8317,17 @@ msgstr "Guardar el archivo laminado como:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "El archivo %s ha sido mandado al almacenamiento de la impresora y puede ser visualizado en la impresora." msgstr "El archivo %s ha sido mandado al almacenamiento de la impresora y puede ser visualizado en la impresora."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publicar"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "El tipo de boquilla no está establecido. Configure la boquilla e inténtelo de nuevo." msgstr "El tipo de boquilla no está establecido. Configure la boquilla e inténtelo de nuevo."
@@ -9338,6 +9412,9 @@ msgstr "Vaso en espiral"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Secuencia de primera capa de filamento" msgstr "Secuencia de primera capa de filamento"
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "La lista de filamentos contiene filamentos mixtos. La secuencia de filamentos personalizada no tendrá efecto."
msgid "By Layer" msgid "By Layer"
msgstr "Por Capa" msgstr "Por Capa"
@@ -9365,9 +9442,6 @@ msgstr "Ir a la página web de publicación de modelos"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Nota: La preparación puede llevar varios minutos. Por favor, sea paciente." msgstr "Nota: La preparación puede llevar varios minutos. Por favor, sea paciente."
msgid "Publish"
msgstr "Publicar"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "La publicación fue cancelada" msgstr "La publicación fue cancelada"
@@ -9383,6 +9457,64 @@ msgstr "Cargando datos"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Ir a la página web" msgstr "Ir a la página web"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Guardar %s como" msgstr "Guardar %s como"
@@ -10670,11 +10802,11 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "No hay modificaciones que copiar." msgstr "No hay modificaciones que copiar."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Copiar parámetros" msgstr "Copiar parámetros"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Modificar parámetros de %s" msgstr "Modificar parámetros de %s"
#, c-format, boost-format #, c-format, boost-format
@@ -11181,27 +11313,6 @@ msgstr "Volúmenes de purgado para el cambio de filamentos"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Por favor, elija el color del filamento" msgstr "Por favor, elija el color del filamento"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "La función de visualización en directo nativa de Wayland requiere el receptor de vídeo GTK de GStreamer. Instale el plugin gtksink para GStreamer y, a continuación, reinicie OrcaSlicer."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "No se pudo inicializar el receptor de vídeo nativo de Wayland GStreamer. Compruebe la instalación del plugin GTK de GStreamer."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Para esta tarea se necesita el Reproductor de Windows Media. ¿Desea activar el \"Reproductor de Windows Media\" en su sistema operativo?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource no se ha registrado correctamente para la reproducción multimedia. Pulse Sí para volver a registrarlo. Será promocionado dos veces"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "¡Falta el componente BambuSource para la reproducción de medios! Reinstale OrcaSlicer o busque ayuda en la comunidad."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Si utiliza una BambuSource de una instalación diferente, es posible que la reproducción de vídeo no funcione correctamente. Pulsa Sí para solucionarlo."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "A tu sistema le faltan los codecs H.264 para GStreamer, necesarios para reproducir vídeo. (Prueba a instalar los paquetes gstreamer1.0-plugins-bad o gstreamer1.0-libav y, a continuación, reinicia Orca Slicer...)."
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "El proveedor de servicios en la nube no está disponible. Reinicia OrcaSlicer e inténtalo de nuevo." msgstr "El proveedor de servicios en la nube no está disponible. Reinicia OrcaSlicer e inténtalo de nuevo."
@@ -11891,6 +12002,9 @@ msgstr "Si aún así quieres imprimir, puedes activar la opción en Preferencias
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "No hay extrusiones con los ajustes actuales." msgstr "No hay extrusiones con los ajustes actuales."
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Se está usando un filamento mixto con degradado, pero 'Subcapa de color mezclado' está desactivado. El degradado no se imprimirá."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Modo de timelapse suave no está soportado cuando la secuencia \"por objeto\" está activada." msgstr "Modo de timelapse suave no está soportado cuando la secuencia \"por objeto\" está activada."
@@ -11927,6 +12041,9 @@ msgstr "Es posible que desee reducir el tamaño de su modelo o cambiar la config
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "La altura de capa adaptativa no es compatible con los soportes orgánicos." msgstr "La altura de capa adaptativa no es compatible con los soportes orgánicos."
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "El filamento de la torre de purga no puede ser un filamento mixto."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Diámetros de boquillas y diámetros de filamento diferentes pueden no funcionar correctamente cuando la torre de purga está activada. Esta función es experimental, así que proceda con cautela." msgstr "Diámetros de boquillas y diámetros de filamento diferentes pueden no funcionar correctamente cuando la torre de purga está activada. Esta función es experimental, así que proceda con cautela."
@@ -12267,8 +12384,8 @@ msgstr "mm o %"
msgid "Other layers" msgid "Other layers"
msgstr "Otras capas" msgstr "Otras capas"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Temperatura de la cama para las capas, excepto la inicial. Un valor de 0 significa que el filamento no es compatible con la Cama Fría SuperTack." msgstr "Esta es la temperatura de la cama para las capas excepto la inicial. Un valor de 0 significa que el filamento no es compatible con la Cama Fría SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Esta es la temperatura de la cama para las capas excepto la inicial. Un valor de 0 significa que el filamento no admite la impresión en la Cama Fría." msgstr "Esta es la temperatura de la cama para las capas excepto la inicial. Un valor de 0 significa que el filamento no admite la impresión en la Cama Fría."
@@ -13611,6 +13728,7 @@ msgstr "Tiempo de capa"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "El ventilador de refrigeración de la pieza se activará para las capas cuyo tiempo estimado sea inferior a este valor. La velocidad del ventilador se interpola entre las velocidades mínima y máxima del ventilador en función del tiempo de impresión de cada capa." msgstr "El ventilador de refrigeración de la pieza se activará para las capas cuyo tiempo estimado sea inferior a este valor. La velocidad del ventilador se interpola entre las velocidades mínima y máxima del ventilador en función del tiempo de impresión de cada capa."
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -13916,6 +14034,50 @@ msgstr "Material de soporte"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "El material de soporte se utiliza habitualmente para imprimir soportes y la interfaz de los soportes." msgstr "El material de soporte se utiliza habitualmente para imprimir soportes y la interfaz de los soportes."
msgid "Is mixed filament"
msgstr "Es filamento mixto"
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Indica si esta ranura de filamento es un filamento mixto compuesto por varios filamentos físicos"
msgid "Mixed filament components"
msgstr "Componentes del filamento mixto"
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Índices (empezando en 1) de los filamentos componentes, separados por comas; p. ej. \"1,3\""
msgid "Mixed filament sublayer ratios"
msgstr "Proporciones de subcapa del filamento mixto"
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Valores de proporción separados por comas cuya suma sea 1.0; p. ej. \"0.7,0.3\""
msgid "Mixed filament gradient"
msgstr "Degradado del filamento mixto"
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Activa el modo de degradado en dirección Z para las subcapas del filamento mixto. Al activarlo, las proporciones de las subcapas varían linealmente entre capas."
msgid "Mixed filament gradient range"
msgstr "Rango del degradado del filamento mixto"
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Proporciones inicial y final del primer componente en el modo de degradado. Par separado por comas; p. ej. \"0.10,0.90\" significa del 10% al 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Curva del degradado del filamento mixto"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Curva personalizada opcional, al estilo de Photoshop, que asigna el progreso en Z a la proporción del primer componente. Se codifica como puntos de control separados por barras verticales, con el formato \"x,y\" (heredado) o \"x,y,m_in,m_out\" cuando se necesita anular la tangente (un valor vacío o \"nan\" usa el valor PCHIP predeterminado). x está en [0,1]; y se limita al rango de proporciones configurado; p. ej. \"0,0.15|0.5,0.50|1,0.85\". Si se deja vacío, se usa el gradient_range lineal."
msgid "Mixed filament per-part gradient"
msgstr "Degradado por pieza del filamento mixto"
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Cuando el modo de degradado está activado, aplica el degradado a cada pieza de un ensamblaje de forma independiente en lugar de tratar todo el ensamblaje como un único rango Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filamento imprimible" msgstr "Filamento imprimible"
@@ -15150,6 +15312,7 @@ msgstr "Fuerza máxima del eje Y"
msgid "The allowed maximum output force of Y axis" msgid "The allowed maximum output force of Y axis"
msgstr "La fuerza máxima permitida del eje Y" msgstr "La fuerza máxima permitida del eje Y"
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15159,6 +15322,7 @@ msgstr "Masa de la cama del eje Y"
msgid "The machine bed mass load of Y axis" msgid "The machine bed mass load of Y axis"
msgstr "La carga de la masa de la cama de la máquina del eje Y" msgstr "La carga de la masa de la cama de la máquina del eje Y"
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15470,7 +15634,7 @@ msgstr "Los puntos de inicio y fin, desde la zona de corte al cubo de basura."
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Reducir la retracción del relleno" msgstr "Reducir la retracción del relleno"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Desactiva la retracción cuando el desplazamiento se realiza en su totalidad dentro de un área de relleno, donde los artefactos causados por un rezumado no son visibles. Puede reducir el número de retracciones y por ende el tiempo total de retracción al imprimir modelos complejos, reduciendo el tiempo total de impresión. Sin embargo, puede que las operaciones de laminado y de generación del archivo G-Code sean más lentas." msgstr "Desactiva la retracción cuando el desplazamiento se realiza en su totalidad dentro de un área de relleno, donde los artefactos causados por un rezumado no son visibles. Puede reducir el número de retracciones y por ende el tiempo total de retracción al imprimir modelos complejos, reduciendo el tiempo total de impresión. Sin embargo, puede que las operaciones de laminado y de generación del archivo G-Code sean más lentas."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -15635,7 +15799,7 @@ msgstr "Cantidad de retracción después de la limpieza"
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"La longitud de la retracción rápida después de la limpieza, relativa a la longitud de retracción.\n" "La longitud de la retracción rápida después de la limpieza, relativa a la longitud de retracción.\n"
@@ -15682,7 +15846,7 @@ msgstr "Cuando se activa la retracción antes de un cambio de herramienta, el fi
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Altura de Salto en Z" msgstr "Altura de Salto en Z"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Cada vez que se realiza una retracción, la boquilla se levanta un poco para crear un pequeño margen entre la boquilla y la impresión. Esto evita que la boquilla golpee la pieza cuando se desplaza. El uso de la línea espiral para levantar z puede evitar la aparición de hilos." msgstr "Cada vez que se realiza una retracción, la boquilla se levanta un poco para crear un pequeño margen entre la boquilla y la impresión. Esto evita que la boquilla golpee la pieza cuando se desplaza. El uso de la línea espiral para levantar z puede evitar la aparición de hilos."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -16715,6 +16879,14 @@ msgstr ""
"\n" "\n"
"Fijando un valor en la cantidad de retracción antes del purgado se realizará cualquier exceso de retracción antes del purgado, de lo contrario se realizará después." "Fijando un valor en la cantidad de retracción antes del purgado se realizará cualquier exceso de retracción antes del purgado, de lo contrario se realizará después."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Subcapa de color mezclado"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Activa la división en subcapas de color mezclado. Al activarlo, las capas que contienen filamentos de color mezclado se dividen en subcapas para lograr efectos de mezcla de colores."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "La torre de purga puede utilizarse para limpiar los residuos de la boquilla y estabilizar la presión de la recámara en el interior de la boquilla, con el fin de evitar defectos visuales al imprimir objetos." msgstr "La torre de purga puede utilizarse para limpiar los residuos de la boquilla y estabilizar la presión de la recámara en el interior de la boquilla, con el fin de evitar defectos visuales al imprimir objetos."
@@ -17423,7 +17595,7 @@ msgid "Current Z-hop"
msgstr "Z-Hop actual" msgstr "Z-Hop actual"
msgid "Contains Z-hop present at the beginning of the custom G-code block." msgid "Contains Z-hop present at the beginning of the custom G-code block."
msgstr "Contiene el z-hop presente al principio del bloque de G-Code personalizado." msgstr "Contiene el Z-hop presente al principio del bloque de G-Code personalizado."
msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back." msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back."
msgstr "Posición del extrusor al comienzo del bloque de G-Code personalizado. Si el G-Code personalizado viaja a otro lugar, debe escribir en esta variable para que OrcaSlicer sepa desde dónde viaja cuando recupere el control." msgstr "Posición del extrusor al comienzo del bloque de G-Code personalizado. Si el G-Code personalizado viaja a otro lugar, debe escribir en esta variable para que OrcaSlicer sepa desde dónde viaja cuando recupere el control."
@@ -17771,6 +17943,10 @@ msgstr "La generación de la malla del archivo del modelo falló o no hay una fo
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "No se ha podido leer el archivo proporcionado porque está vacío." msgstr "No se ha podido leer el archivo proporcionado porque está vacío."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "El formato del archivo es incompatible y no se puede analizar."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Formato de archivo desconocido: el archivo de entrada debe tener extensión .STL, .obj o .amf (.xml)." msgstr "Formato de archivo desconocido: el archivo de entrada debe tener extensión .STL, .obj o .amf (.xml)."
@@ -19233,17 +19409,17 @@ msgstr "Mostrar sólo los nombres de impresora con cambios en los perfiles de im
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Mostrar sólo los nombres de impresora con cambios en los perfiles de filamento." msgstr "Mostrar sólo los nombres de impresora con cambios en los perfiles de filamento."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Sólo se mostrarán los nombres de impresoras con perfiles de impresora de usuario, y cada perfil que elija se exportará como un archivo zip." msgstr "Sólo se mostrarán los nombres de impresoras con perfiles de impresora de usuario, y cada perfil que elija se exportará como un archivo zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "Sólo se mostrarán los nombres de filamento con perfiles de filamento de usuario, y todos los perfiles de filamento de usuario de cada nombre de filamento que seleccione se exportarán como un archivo zip." msgstr "Sólo se mostrarán los nombres de filamento con perfiles de filamento de usuario, y todos los perfiles de filamento de usuario de cada nombre de filamento que seleccione se exportarán como un archivo zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Sólo se mostrarán los nombres de impresoras con perfiles de procesos modificados, \n" "Sólo se mostrarán los nombres de impresoras con perfiles de procesos modificados, \n"
"y todos los perfiles de procesos de usuario de cada nombre de impresora que seleccione se exportarán como un archivo zip." "y todos los perfiles de procesos de usuario de cada nombre de impresora que seleccione se exportarán como un archivo zip."
@@ -19472,7 +19648,7 @@ msgstr "Copiar información del sistema al portapapeles"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Necesitamos información para diagnosticar el origen del problema. Consulta la página wiki para una guía detallada." msgstr "Necesitamos información para diagnosticar el origen del problema. Consulta la página wiki para una guía detallada."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "El botón Empaquetar recopila el archivo del proyecto y los registros de la sesión actual en un archivo zip." msgstr "El botón Empaquetar recopila el archivo del proyecto y los registros de la sesión actual en un archivo zip."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -19514,7 +19690,7 @@ msgstr "Nivel de registro"
msgid "Stored logs" msgid "Stored logs"
msgstr "Registros almacenados" msgstr "Registros almacenados"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Empaqueta todos los registros almacenados en un archivo zip." msgstr "Empaqueta todos los registros almacenados en un archivo zip."
msgid "Profiles" msgid "Profiles"
@@ -19581,7 +19757,7 @@ msgstr "No se ha encontrado el tipo de impresora; selecciónelo manualmente."
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Autorizando..." msgstr "Autorizando..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Error. No se puede obtener el token de la API para la autorización" msgstr "Error. No se puede obtener el token de la API para la autorización"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20027,8 +20203,9 @@ msgstr "Eliminado"
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "Activar la asignación inteligente de filamento: asigna un filamento a varias boquillas para maximizar el ahorro" msgstr "Activar la asignación inteligente de filamento: asigna un filamento a varias boquillas para maximizar el ahorro"
msgid "Fila Saving" # AI Translated
msgstr "Ahorro de filamento" msgid "File Saving"
msgstr "Guardado de archivo"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "No me recuerdes de nuevo" msgstr "No me recuerdes de nuevo"
@@ -20310,6 +20487,15 @@ msgstr "Esta acción no se puede deshacer. ¿Continuar?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Omitiendo objetos." msgstr "Omitiendo objetos."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Seleccionar Filamento" msgstr "Seleccionar Filamento"
@@ -20387,6 +20573,9 @@ msgstr "Reiniciar ahora"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "NO CHOCAR EN ABSOLUTO" msgstr "NO CHOCAR EN ABSOLUTO"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Velocidad volumétrica" msgstr "Velocidad volumétrica"
@@ -20963,6 +21152,36 @@ msgstr ""
"Evita la deformación\n" "Evita la deformación\n"
"¿Sabías que al imprimir materiales propensos a la deformación como el ABS, aumentar adecuadamente la temperatura de la cama térmica puede reducir la probabilidad de deformaciones?" "¿Sabías que al imprimir materiales propensos a la deformación como el ABS, aumentar adecuadamente la temperatura de la cama térmica puede reducir la probabilidad de deformaciones?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "La función de visualización en directo nativa de Wayland requiere el receptor de vídeo GTK de GStreamer. Instale el plugin gtksink para GStreamer y, a continuación, reinicie OrcaSlicer."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "No se pudo inicializar el receptor de vídeo nativo de Wayland GStreamer. Compruebe la instalación del plugin GTK de GStreamer."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Para esta tarea se necesita el Reproductor de Windows Media. ¿Desea activar el \"Reproductor de Windows Media\" en su sistema operativo?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource no se ha registrado correctamente para la reproducción multimedia. Pulse Sí para volver a registrarlo. Será promocionado dos veces"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "¡Falta el componente BambuSource para la reproducción de medios! Reinstale OrcaSlicer o busque ayuda en la comunidad."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Si utiliza una BambuSource de una instalación diferente, es posible que la reproducción de vídeo no funcione correctamente. Pulsa Sí para solucionarlo."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "A tu sistema le faltan los codecs H.264 para GStreamer, necesarios para reproducir vídeo. (Prueba a instalar los paquetes gstreamer1.0-plugins-bad o gstreamer1.0-libav y, a continuación, reinicia Orca Slicer...)."
#~ msgid "N"
#~ msgstr "N"
#~ msgid "g"
#~ msgstr "g"
#~ msgid "Fila Saving"
#~ msgstr "Ahorro de filamento"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"
@@ -21042,7 +21261,7 @@ msgstr ""
#~ msgid "Select Filament && Hotends" #~ msgid "Select Filament && Hotends"
#~ msgstr "Seleccionar Filamento && Hotends" #~ msgstr "Seleccionar Filamento && Hotends"
#~ msgid "External spools is not supported since Filament Track Switch has been installed. If you want to use external spool, please uninstall it." #~ msgid "External spools are not supported since Filament Track Switch has been installed. If you want to use external spool, please uninstall it."
#~ msgstr "Los carretes externos no son compatibles porque se ha instalado el Filament Track Switch. Si desea utilizar un carrete externo, desinstálelo." #~ msgstr "Los carretes externos no son compatibles porque se ha instalado el Filament Track Switch. Si desea utilizar un carrete externo, desinstálelo."
#, c-format, boost-format #, c-format, boost-format

View File

@@ -3,12 +3,11 @@
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
#, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-07-20 13:33+0200\n" "PO-Revision-Date: 2026-07-20 13:33+0200\n"
"Last-Translator: Manu Goiogana <mgoiogana@gmail.com>\n" "Last-Translator: Manu Goiogana <mgoiogana@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2869,6 +2868,10 @@ msgstr "Editatu"
msgid "Merge with" msgid "Merge with"
msgstr "Batu honekin" msgstr "Batu honekin"
# AI Translated
msgid "Decompose Color"
msgstr "Deskonposatu kolorea"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Ezabatu filamentu hau" msgstr "Ezabatu filamentu hau"
@@ -3150,6 +3153,10 @@ msgstr "Multzoa"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Batu piezak objektu batean" msgstr "Batu piezak objektu batean"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Geruza-altuera aldakorra kolore nahasiaren azpigeruzarekin batera erabiltzeak kolore-nahasketaren kalitatea okertu dezake."
msgid "Add layers" msgid "Add layers"
msgstr "Geruzak gehitu" msgstr "Geruzak gehitu"
@@ -4670,7 +4677,7 @@ msgstr ""
"\n" "\n"
"Balioa 0ra berrezarriko da." "Balioa 0ra berrezarriko da."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Horma gehigarri txandakatuak ez du ondo funtzionatzen \"Bermatu oskolaren lodiera bertikala\" Guztiak gisa ezarrita dagoenean." msgstr "Horma gehigarri txandakatuak ez du ondo funtzionatzen \"Bermatu oskolaren lodiera bertikala\" Guztiak gisa ezarrita dagoenean."
msgid "" msgid ""
@@ -4716,7 +4723,7 @@ msgstr ""
"NO - 'Euskarrien Geruza-Altuera Independentea' mantendu" "NO - 'Euskarrien Geruza-Altuera Independentea' mantendu"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height txigiagoa izan behar da layer_height baino.\n" "seam_slope_start_height txigiagoa izan behar da layer_height baino.\n"
@@ -4724,7 +4731,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Blokeo-sakonera gainazalaren sakonera baino txikiagoa izan behar da.\n" "Blokeo-sakonera gainazalaren sakonera baino txikiagoa izan behar da.\n"
@@ -4764,6 +4771,9 @@ msgstr ""
"Bai - Aldatu ezarpen hauek eta gaitu espiral/loreontzi modua automatikoki\n" "Bai - Aldatu ezarpen hauek eta gaitu espiral/loreontzi modua automatikoki\n"
"Ez - Utzi bertan behera espiral modua gaitzea" "Ez - Utzi bertan behera espiral modua gaitzea"
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Inprimatzen" msgstr "Inprimatzen"
@@ -5224,9 +5234,6 @@ msgstr "Patroi baliogabea. Erabili N, N#K edo komaz bereizitako zerrenda bat, sa
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Formatuak ez du balio. Espero den formatu bektoriala: \"%1%\"" msgstr "Formatuak ez du balio. Espero den formatu bektoriala: \"%1%\""
msgid "N/A"
msgstr "N/A"
msgid "System agents" msgid "System agents"
msgstr "Sistema-agenteak" msgstr "Sistema-agenteak"
@@ -6168,16 +6175,22 @@ msgstr "Gorde proiektua honela"
msgid "Save current project as" msgid "Save current project as"
msgstr "Gorde uneko proiektua honela" msgstr "Gorde uneko proiektua honela"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Inportatu 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Inportatu 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Modeloa kargatu" msgstr "Modeloa kargatu"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Inportatu ZIP fitxategia" msgstr "Inportatu ZIP fitxategia"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Kargatu ZIP fitxategi baten barnean dauden modeloak" msgstr "Kargatu ZIP fitxategi baten barnean dauden modeloak"
msgid "Import Configs" msgid "Import Configs"
@@ -7680,6 +7693,10 @@ msgstr "Pertsonalizatu uneko plaka"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%s pitak ezin du %s inprimatu." msgstr "%s pitak ezin du %s inprimatu."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Kolore nahasiko filamentua estrusore bakarreko inprimagailu batean inprimatzeak filamentu-aldaketa eta purgatze ugari eskatzen ditu, eta horrek nabarmen handitu ditzake hondakinak eta pita edo hondakin-hodia buxatzeko arriskua."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Ez da gomendatzen inprimatzean %1% eta %2% nahastea.\n" msgstr "Ez da gomendatzen inprimatzean %1% eta %2% nahastea.\n"
@@ -7802,12 +7819,44 @@ msgstr "Sinkronizatu filamentuen zerrenda AMSarekin"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Ezarri erabili beharreko filamentuak" msgstr "Ezarri erabili beharreko filamentuak"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Gehitu filamentu nahasia"
# AI Translated
msgid "Mixed Filament"
msgstr "Filamentu nahasia"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Kendu azken filamentu nahasia"
# AI Translated
msgid "Add mixed filament"
msgstr "Gehitu filamentu nahasia"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Filamentu nahasiak baliogabeko edo bat ez datozen osagaiak ditu. Editatu berriro kaltetutako sarrerak."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Bilatu plaka, objektua eta pieza." msgstr "Bilatu plaka, objektua eta pieza."
msgid "Pellets" msgid "Pellets"
msgstr "Pelletak" msgstr "Pelletak"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Filamentu nahasiak hautsitako osagai-erreferentziak ditu"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Editatu / Ezabatu / Batu"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Helburuko filamentu nahasiak filamentu fisiko hau erabiltzen du osagai gisa. Batzeak filamentu fisiko hau ezabatuko du eta filamentu nahasia baliogabetu dezake. Jarraitu?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Eragiketa amaitzean, %s proiektua itxi eta proiektu berri bat sortuko da." msgstr "Eragiketa amaitzean, %s proiektua itxi eta proiektu berri bat sortuko da."
@@ -7945,7 +7994,13 @@ msgstr "Berretsi aurrezarpen hauetako G-codea segurua dela, makinari kalterik ez
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Aurrezarpen pertsonalizatua" msgstr "Aurrezarpen pertsonalizatua"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "STEP fitxategiko osagai-izena(k) ez dago/daude UTF-8 formatuan!" msgstr "STEP fitxategiko osagai-izena(k) ez dago/daude UTF-8 formatuan!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -7967,10 +8022,10 @@ msgstr "Objektuaren bolumena zero da"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"%s fitxategiko objektua txikiegia da, eta baliteke metrotan edo hazbetetan egotea.\n" "%s fitxategiko objektua txikiegia da, eta baliteke metrotan edo hazbetetan egotea.\n"
" Milimetroetara eskalatu nahi duzu?" "Milimetroetara eskalatu nahi duzu?"
msgid "Object too small" msgid "Object too small"
msgstr "Objektua txikiegia da" msgstr "Objektua txikiegia da"
@@ -7986,6 +8041,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Pieza anitzeko objektua detektatu da" msgstr "Pieza anitzeko objektua detektatu da"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Testurak filamentuekin parekatzen"
# AI Translated
msgid "Texture Import Warning"
msgstr "Testura inportatzeko abisua"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Kargatu fitxategi hauek pieza anitzeko objektu bakar gisa?\n" msgstr "Kargatu fitxategi hauek pieza anitzeko objektu bakar gisa?\n"
@@ -8190,6 +8253,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Sinkronizatu orain" msgstr "Sinkronizatu orain"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Testura inportatzeak huts egin du. Badirudi modeloak testura-datuak dituela, baina ezin izan da inportatze-prozesua osatu. Modeloa geometria gisa soilik inportatuko da."
# AI Translated
msgid "Applying texture colors..."
msgstr "Testura-koloreak aplikatzen..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3D ikuspegia eguneratzen..."
# AI Translated
msgid "Texture colors applied."
msgstr "Testura-koloreak aplikatuta."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Aldatutako aurrezarpenak proiektu berrirako gorde edo baztertu ditzakezu" msgstr "Aldatutako aurrezarpenak proiektu berrirako gorde edo baztertu ditzakezu"
@@ -8321,6 +8400,17 @@ msgstr "Gorde xerratutako fitxategia honela:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "%s fitxategia inprimagailuaren biltegiratze-eremura bidali da eta inprimagailuan ikus daiteke." msgstr "%s fitxategia inprimagailuaren biltegiratze-eremura bidali da eta inprimagailuan ikus daiteke."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Argitaratu"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Pita mota ez dago ezarrita. Ezarri pita eta saiatu berriro." msgstr "Pita mota ez dago ezarrita. Ezarri pita eta saiatu berriro."
@@ -9407,6 +9497,10 @@ msgstr "Espiral formako loreontzia"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Lehen geruzako filamentuen sekuentzia" msgstr "Lehen geruzako filamentuen sekuentzia"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Filamentu-zerrendak filamentu nahasiak ditu. Filamentu-sekuentzia pertsonalizatuak ez du eraginik izango."
msgid "By Layer" msgid "By Layer"
msgstr "Geruzaren arabera" msgstr "Geruzaren arabera"
@@ -9434,9 +9528,6 @@ msgstr "Joan modeloa argitaratzeko web-orrira"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Oharra: prestaketak minutu batzuk iraun ditzake. Izan pazientzia." msgstr "Oharra: prestaketak minutu batzuk iraun ditzake. Izan pazientzia."
msgid "Publish"
msgstr "Argitaratu"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Argitaratzea bertan behera utzi da" msgstr "Argitaratzea bertan behera utzi da"
@@ -9452,6 +9543,64 @@ msgstr "Datuak igotzen"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Joan web-orrira" msgstr "Joan web-orrira"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Gorde %s honela" msgstr "Gorde %s honela"
@@ -10765,11 +10914,11 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Ez dago kopiatu beharreko aldaketarik." msgstr "Ez dago kopiatu beharreko aldaketarik."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Kopiatu parametroak" msgstr "Kopiatu parametroak"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Aldatu %s-(r)en parametroak" msgstr "Aldatu %s-(r)en parametroak"
#, c-format, boost-format #, c-format, boost-format
@@ -11274,27 +11423,6 @@ msgstr "Filamentua aldatzeko purgatze-bolumenak"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Hautatu filamentuen kolorea" msgstr "Hautatu filamentuen kolorea"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Waylanden jatorrizko zuzeneko ikuspegiak GStreamer GTK bideo-hustubidea behar du. Instalatu GStreamerrerako gtksink plugina eta berrabiarazi OrcaSlicer."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Ezin izan da Waylanden jatorrizko GStreamer bideo-hustubidea hasieratu. Egiaztatu GStreamer GTK pluginaren instalazioa."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Windows Media Player behar da zeregin honetarako! 'Windows Media Player' gaitu nahi duzu zure sistema eragilean?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource ez da behar bezala erregistratu multimedia erreproduzitzeko! Sakatu Bai berriro erregistratzeko. Bi aldiz galdetuko zaizu"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Multimedia erreproduzitzeko erregistratutako BambuSource osagaia falta da! Berrinstalatu OrcaSlicer edo eskatu laguntza komunitateari."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Beste instalazio bateko BambuSource erabiltzen ari zara; baliteke bideo-erreprodukzioak behar bezala ez funtzionatzea! Sakatu Bai konpontzeko."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Zure sisteman GStreamer-erako H.264 kodekak falta dira, eta beharrezkoak dira bideoa erreproduzitzeko. (Saiatu gstreamer1.0-plugins-bad edo gstreamer1.0-libav paketeak instalatzen, eta berrabiarazi OrcaSlicer?)"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Hodeiko agentea ez dago erabilgarri. Berrabiarazi OrcaSlicer eta saiatu berriro." msgstr "Hodeiko agentea ez dago erabilgarri. Berrabiarazi OrcaSlicer eta saiatu berriro."
@@ -11994,6 +12122,10 @@ msgstr "Hala ere inprimatu nahi baduzu, aukera hau gaitu dezakezu: Hobespenak /
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Uneko ezarpenekin ez dago estrusiorik." msgstr "Uneko ezarpenekin ez dago estrusiorik."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Gradientedun filamentu nahasi bat erabiltzen ari da, baina 'Kolore nahasiaren azpigeruza' desgaituta dago. Gradientea ez da inprimatuko."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Timelapsearen modu leuna ez da onartzen \"objektuka\" sekuentzia gaituta dagoenean." msgstr "Timelapsearen modu leuna ez da onartzen \"objektuka\" sekuentzia gaituta dagoenean."
@@ -12030,6 +12162,10 @@ msgstr "Modeloaren tamaina txikitu edo uneko inprimatze-ezarpenak aldatu eta ber
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Geruza-altuera aldakorra ez da onartzen euskarri organikoekin." msgstr "Geruza-altuera aldakorra ez da onartzen euskarri organikoekin."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Purgatze-dorrearen filamentua ezin da filamentu nahasia izan."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Pitaren diametro eta filamentu-diametro desberdinek agian ez dute ondo funtzionatuko purgatze-dorrea gaituta dagoenean. Oso esperimentala da; jarraitu kontuz." msgstr "Pitaren diametro eta filamentu-diametro desberdinek agian ez dute ondo funtzionatuko purgatze-dorrea gaituta dagoenean. Oso esperimentala da; jarraitu kontuz."
@@ -12379,8 +12515,8 @@ msgstr "mm edo %"
msgid "Other layers" msgid "Other layers"
msgstr "Beste geruzak" msgstr "Beste geruzak"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Hasierakoa ez den geruzetarako ohearen tenperatura. 0 balioak filamentuak SuperTack Plaka hotzaren gainean inprimatzea ez duela onartzen esan nahi du." msgstr "Hau da lehenengoa ez den geruzetarako ohearen tenperatura. 0 balioak filamentuak SuperTack Plaka hotzaren gainean inprimatzea ez duela onartzen esan nahi du."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Hau da lehenengoa ez den geruzetarako ohearen tenperatura. 0 balioak filamentuak Plaka hotzaren gainean inprimatzea ez duela onartzen esan nahi du." msgstr "Hau da lehenengoa ez den geruzetarako ohearen tenperatura. 0 balioak filamentuak Plaka hotzaren gainean inprimatzea ez duela onartzen esan nahi du."
@@ -13730,6 +13866,8 @@ msgstr "Geruza-denbora"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Piezaren hozte-haizagailua gaituko da estimatutako denbora balio hau baino laburragoa duten geruzetan. Haizagailuaren abiadura gutxienekoaren eta gehienekoaren artean interpolatuko da geruzaren inprimatze-denboraren arabera." msgstr "Piezaren hozte-haizagailua gaituko da estimatutako denbora balio hau baino laburragoa duten geruzetan. Haizagailuaren abiadura gutxienekoaren eta gehienekoaren artean interpolatuko da geruzaren inprimatze-denboraren arabera."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14035,6 +14173,62 @@ msgstr "Euskarri-materiala"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Euskarri-materiala euskarriak eta euskarri-interfazeak inprimatzeko erabiltzen da normalean." msgstr "Euskarri-materiala euskarriak eta euskarri-interfazeak inprimatzeko erabiltzen da normalean."
# AI Translated
msgid "Is mixed filament"
msgstr "Filamentu nahasia da"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Filamentu-zirrikitu hau hainbat filamentu fisikoz osatutako filamentu nahasia den adierazten du"
# AI Translated
msgid "Mixed filament components"
msgstr "Filamentu nahasiaren osagaiak"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Osagai-filamentuen indizeak, komaz bereizita eta 1etik hasita; adib. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Filamentu nahasiaren azpigeruza-ratioak"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Komaz bereizitako ratio-balioak, guztira 1.0 ematen dutenak; adib. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Filamentu nahasiaren gradientea"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Z norabideko gradiente modua gaitzen du filamentu nahasiaren azpigeruzetarako. Gaituta dagoenean, azpigeruzen ratioak linealki aldatzen dira geruzaz geruza."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Filamentu nahasiaren gradiente-barrutia"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Lehen osagaiaren hasierako eta amaierako ratioak gradiente moduan. Komaz bereizitako parea; adib. \"0.10,0.90\" %10etik %90era esan nahi du."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Filamentu nahasiaren gradiente-kurba"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Aukerako Photoshop estiloko kurba pertsonalizatua, Z progresioa lehen osagaiaren ratioarekin lotzen duena. Barra bertikalez bereizitako kontrol-puntu gisa kodetzen da, \"x,y\" (zaharra) edo \"x,y,m_in,m_out\" formatuan, tangentea gainidatzi behar denean (balio hutsak edo \"nan\" balioak PCHIP lehenetsia erabiltzen du). x [0,1] tartean dago; y konfiguratutako ratio-barrutira mugatzen da; adib. \"0,0.15|0.5,0.50|1,0.85\". Hutsik uzten bada, gradient_range lineala erabiltzen da haren ordez."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Filamentu nahasiaren gradientea pieza bakoitzeko"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Gradiente modua gaituta dagoenean, gradientea multzoko pieza bakoitzari modu independentean aplikatzen zaio, multzo osoa Z barruti bakar gisa hartu beharrean."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filamentua inprimagarria" msgstr "Filamentua inprimagarria"
@@ -15286,6 +15480,8 @@ msgstr "Y ardatzaren gehieneko indarra"
msgid "The allowed maximum output force of Y axis" msgid "The allowed maximum output force of Y axis"
msgstr "Y ardatzaren gehieneko irteera-indar baimendua" msgstr "Y ardatzaren gehieneko irteera-indar baimendua"
# AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15295,6 +15491,8 @@ msgstr "Y ardatzeko ohearen masa"
msgid "The machine bed mass load of Y axis" msgid "The machine bed mass load of Y axis"
msgstr "Y ardatzeko makinaren oheak jasaten duen masa-karga" msgstr "Y ardatzeko makinaren oheak jasaten duen masa-karga"
# AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15606,8 +15804,8 @@ msgstr "Mozteko eremutik hondakin-ontzira doazen hasierako eta amaierako puntuak
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Murriztu betegarriaren atzera-egitea" msgstr "Murriztu betegarriaren atzera-egitea"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Ez egin atzera-egiterik mugimendua guztiz betegarriaren eremuan dagoenean. Horrek esan nahi du jarioa ez dela ikusiko. Honek modelo konplexuetan atzera-egite kopurua murriztu eta inprimatze-denbora aurreztu dezake, baina xerraketa eta G-codearen sorrera motelduko ditu. Kontuan izan z-hop mugimendua ez dela egiten atzera-egitea saihesten den eremuetan." msgstr "Ez egin atzera-egiterik mugimendua guztiz betegarriaren eremuan dagoenean. Horrek esan nahi du jarioa ez dela ikusiko. Honek modelo konplexuetan atzera-egite kopurua murriztu eta inprimatze-denbora aurreztu dezake, baina xerraketa eta G-codearen sorrera motelduko ditu. Kontuan izan Z-hop mugimendua ez dela egiten atzera-egitea saihesten den eremuetan."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "Aukera honek aktibo ez dauden estrusoreen tenperatura jaitsiko du, jarioa saihesteko." msgstr "Aukera honek aktibo ez dauden estrusoreen tenperatura jaitsiko du, jarioa saihesteko."
@@ -15771,7 +15969,7 @@ msgstr "Garbitu ondorengo atzera-egite kantitatea"
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Garbiketa-mugimenduaren ondorengo atzera-egite azkarraren luzera, atzera-egitearen luzerari dagokionez.\n" "Garbiketa-mugimenduaren ondorengo atzera-egite azkarraren luzera, atzera-egitearen luzerari dagokionez.\n"
@@ -15818,7 +16016,7 @@ msgstr "Erreminta aldatu aurretik atzera-egitea abiarazten denean, filamentua ze
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z jauziaren altuera" msgstr "Z jauziaren altuera"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Atzera-egite bakoitzean pita apur bat altxatzen da pitaren eta inprimaketaren artean tartea sortzeko. Horrela, mugimenduetan pitak pieza jotzea saihesten da. Z altxatzeko espiral-lerroak erabiltzeak hariak sortzea murriztu dezake." msgstr "Atzera-egite bakoitzean pita apur bat altxatzen da pitaren eta inprimaketaren artean tartea sortzeko. Horrela, mugimenduetan pitak pieza jotzea saihesten da. Z altxatzeko espiral-lerroak erabiltzeak hariak sortzea murriztu dezake."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -16860,6 +17058,14 @@ msgstr ""
"\n" "\n"
"Beheko garbitu aurreko atzera-egite kantitatearen ezarpenean balio batezarriz gero, gehiegizko atzera-egitea garbiketa baino lehen egingo da; bestela, ondoren egingo da." "Beheko garbitu aurreko atzera-egite kantitatearen ezarpenean balio batezarriz gero, gehiegizko atzera-egitea garbiketa baino lehen egingo da; bestela, ondoren egingo da."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Kolore nahasiaren azpigeruza"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Kolore nahasiaren azpigeruzatan zatitzea gaitzen du. Gaituta dagoenean, kolore nahasiko filamentuak dituzten geruzak azpigeruzatan zatitzen dira kolore-nahasketa efektuak lortzeko."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Purgatze-dorrea pitaren hondarrak garbitzeko eta pitaren barruko ganbera-presioa egonkortzeko erabil daiteke, objektuetan itxura-akatsak saihesteko." msgstr "Purgatze-dorrea pitaren hondarrak garbitzeko eta pitaren barruko ganbera-presioa egonkortzeko erabil daiteke, objektuetan itxura-akatsak saihesteko."
@@ -17918,6 +18124,10 @@ msgstr "Modelo-fitxategiaren sareztatzeak huts egin du edo ez dago baliozko form
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Emandako fitxategia ezin izan da irakurri hutsik dagoelako." msgstr "Emandako fitxategia ezin izan da irakurri hutsik dagoelako."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Fitxategi-formatua bateraezina da eta ezin da analizatu."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Fitxategi-formatu ezezaguna: sarrerako fitxategiak .stl, .obj edo .amf(.xml) luzapena izan behar du." msgstr "Fitxategi-formatu ezezaguna: sarrerako fitxategiak .stl, .obj edo .amf(.xml) luzapena izan behar du."
@@ -19379,19 +19589,19 @@ msgstr "Inprimagailuaren, filamentuen edo prozesuen aurrezarpenetan aldaketak di
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Bistaratu soilik filamentu-aurrezarpenetan aldaketak dituzten filamentu-izenak." msgstr "Bistaratu soilik filamentu-aurrezarpenetan aldaketak dituzten filamentu-izenak."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Erabiltzailearen inprimagailu-aurrezarpenak dituzten inprimagailu-izenak soilik bistaratuko dira, eta hautatzen duzun aurrezarpen bakoitza zip gisa esportatuko da." msgstr "Erabiltzailearen inprimagailu-aurrezarpenak dituzten inprimagailu-izenak soilik bistaratuko dira, eta hautatzen duzun aurrezarpen bakoitza zip gisa esportatuko da."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Erabiltzailearen filamentu-aurrezarpenak dituzten filamentu-izenak soilik bistaratuko dira, \n" "Erabiltzailearen filamentu-aurrezarpenak dituzten filamentu-izenak soilik bistaratuko dira, \n"
"eta hautatzen duzun filamentu-izen bakoitzeko erabiltzailearen filamentu-aurrezarpen guztiak zip gisa esportatuko dira." "eta hautatzen duzun filamentu-izen bakoitzeko erabiltzailearen filamentu-aurrezarpen guztiak zip gisa esportatuko dira."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Prozesu-aurrezarpen aldatuak dituzten inprimagailu-izenak soilik bistaratuko dira, \n" "Prozesu-aurrezarpen aldatuak dituzten inprimagailu-izenak soilik bistaratuko dira, \n"
"eta hautatzen duzun inprimagailu-izen bakoitzeko erabiltzailearen prozesu-aurrezarpen guztiak zip gisa esportatuko dira." "eta hautatzen duzun inprimagailu-izen bakoitzeko erabiltzailearen prozesu-aurrezarpen guztiak zip gisa esportatuko dira."
@@ -19620,7 +19830,7 @@ msgstr "Kopiatu sistemaren informazioa arbelera"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Arazoaren jatorria diagnostikatzeko informazioa behar dugu. Begiratu wiki-orria gida xehatua ikusteko." msgstr "Arazoaren jatorria diagnostikatzeko informazioa behar dugu. Begiratu wiki-orria gida xehatua ikusteko."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Paketatu botoiak proiektu-fitxategia eta uneko saioko erregistroak ZIP fitxategi batean biltzen ditu." msgstr "Paketatu botoiak proiektu-fitxategia eta uneko saioko erregistroak ZIP fitxategi batean biltzen ditu."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -19662,7 +19872,7 @@ msgstr "Erregistro-maila"
msgid "Stored logs" msgid "Stored logs"
msgstr "Gordetako erregistroak" msgstr "Gordetako erregistroak"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Gordetako erregistro guztiak ZIP fitxategi batean paketatzen ditu." msgstr "Gordetako erregistro guztiak ZIP fitxategi batean paketatzen ditu."
msgid "Profiles" msgid "Profiles"
@@ -19729,7 +19939,7 @@ msgstr "Ez da inprimagailu mota aurkitu; hautatu eskuz."
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Baimena ematen..." msgstr "Baimena ematen..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Errorea. Ezin da baimenerako API tokena lortu" msgstr "Errorea. Ezin da baimenerako API tokena lortu"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20180,8 +20390,9 @@ msgstr "Ezabatuta"
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "Gaitu filamentuen esleipen adimenduna: esleitu filamentua hainbat pitatara aurrezpena maximizatzeko" msgstr "Gaitu filamentuen esleipen adimenduna: esleitu filamentua hainbat pitatara aurrezpena maximizatzeko"
msgid "Fila Saving" # AI Translated
msgstr "Filamentu-aurrezpena" msgid "File Saving"
msgstr "Fitxategia gordetzea"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Ez gogorarazi berriro" msgstr "Ez gogorarazi berriro"
@@ -20463,6 +20674,15 @@ msgstr "Ekintza hau ezin da desegin. Jarraitu?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Objektuak saltatzen." msgstr "Objektuak saltatzen."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Hautatu filamentua" msgstr "Hautatu filamentua"
@@ -20542,6 +20762,9 @@ msgstr "Berrabiarazi orain"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "MUTURRAREN MOLDAKETARIK EZ INONDIK INORA" msgstr "MUTURRAREN MOLDAKETARIK EZ INONDIK INORA"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Abiadura bolumetrikoa" msgstr "Abiadura bolumetrikoa"
@@ -21118,6 +21341,36 @@ msgstr ""
"Saihestu okertzea\n" "Saihestu okertzea\n"
"Ba al zenekien ABS bezalako okertzeko joera duten materialak inprimatzean ohe beroaren tenperatura egoki igotzeak okertzeko probabilitatea murriztu dezakeela?" "Ba al zenekien ABS bezalako okertzeko joera duten materialak inprimatzean ohe beroaren tenperatura egoki igotzeak okertzeko probabilitatea murriztu dezakeela?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Waylanden jatorrizko zuzeneko ikuspegiak GStreamer GTK bideo-hustubidea behar du. Instalatu GStreamerrerako gtksink plugina eta berrabiarazi OrcaSlicer."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Ezin izan da Waylanden jatorrizko GStreamer bideo-hustubidea hasieratu. Egiaztatu GStreamer GTK pluginaren instalazioa."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Windows Media Player behar da zeregin honetarako! 'Windows Media Player' gaitu nahi duzu zure sistema eragilean?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource ez da behar bezala erregistratu multimedia erreproduzitzeko! Sakatu Bai berriro erregistratzeko. Bi aldiz galdetuko zaizu"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Multimedia erreproduzitzeko erregistratutako BambuSource osagaia falta da! Berrinstalatu OrcaSlicer edo eskatu laguntza komunitateari."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Beste instalazio bateko BambuSource erabiltzen ari zara; baliteke bideo-erreprodukzioak behar bezala ez funtzionatzea! Sakatu Bai konpontzeko."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Zure sisteman GStreamer-erako H.264 kodekak falta dira, eta beharrezkoak dira bideoa erreproduzitzeko. (Saiatu gstreamer1.0-plugins-bad edo gstreamer1.0-libav paketeak instalatzen, eta berrabiarazi OrcaSlicer?)"
#~ msgid "N"
#~ msgstr "N"
#~ msgid "g"
#~ msgstr "g"
#~ msgid "Fila Saving"
#~ msgstr "Filamentu-aurrezpena"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"
@@ -22259,20 +22512,12 @@ msgstr ""
#~ msgid "The 3mf has the following customized filament or printer presets:" #~ msgid "The 3mf has the following customized filament or printer presets:"
#~ msgstr "3mf-ak pertsonalizatutako filamentuen edo inprimagailuaren aurrezarpen hauek dauzka:" #~ msgstr "3mf-ak pertsonalizatutako filamentuen edo inprimagailuaren aurrezarpen hauek dauzka:"
#~ msgid "Name of components inside step file is not UTF8 format!" #~ msgid "Name of components inside step file is not UTF-8 format!"
#~ msgstr "Step fitxategiko osagaien izena ez dago UTF8 formatuan!" #~ msgstr "Step fitxategiko osagaien izena ez dago UTF-8 formatuan!"
#~ msgid "The name may show garbage characters!" #~ msgid "The name may show garbage characters!"
#~ msgstr "Izenak karaktere ulergaitzak erakuts ditzake!" #~ msgstr "Izenak karaktere ulergaitzak erakuts ditzake!"
#, c-format, boost-format
#~ msgid ""
#~ "The object from file %s is too small, and maybe in meters or inches.\n"
#~ " Do you want to scale to millimeters?"
#~ msgstr ""
#~ "%s fitxategiko objektua txikiegia da, eta baliteke metroetan edo hazbetetan egotea.\n"
#~ " Milimetrotara eskalatu nahi duzu?"
#~ msgid "" #~ msgid ""
#~ "This file contains several objects positioned at multiple heights.\n" #~ "This file contains several objects positioned at multiple heights.\n"
#~ "Instead of considering them as multiple objects, should \n" #~ "Instead of considering them as multiple objects, should \n"
@@ -23123,24 +23368,6 @@ msgstr ""
#~ msgid "Maximum detour distance for avoiding crossing wall. Don't detour if the detour distance is larger than this value. Detour length could be specified either as an absolute value or as percentage (for example 50%) of a direct travel path. Zero to disable." #~ msgid "Maximum detour distance for avoiding crossing wall. Don't detour if the detour distance is larger than this value. Detour length could be specified either as an absolute value or as percentage (for example 50%) of a direct travel path. Zero to disable."
#~ msgstr "Hormak gurutzatzea saihesteko gehieneko desbideratze-distantzia. Ez desbideratu distantzia balio hau baino handiagoa bada. Desbideratze-luzera balio absolutu gisa edo lekualdatze-ibilbide zuzenaren ehuneko gisa zehaztu daiteke (adibidez, 50%). Zero, desgaitzeko." #~ msgstr "Hormak gurutzatzea saihesteko gehieneko desbideratze-distantzia. Ez desbideratu distantzia balio hau baino handiagoa bada. Desbideratze-luzera balio absolutu gisa edo lekualdatze-ibilbide zuzenaren ehuneko gisa zehaztu daiteke (adibidez, 50%). Zero, desgaitzeko."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate."
#~ msgstr "Ohearen tenperatura hasierakoa ez diren geruzetarako. 0 balioak esan nahi du filamentuak ez duela plaka hotzean inprimatzea onartzen."
#~ msgid "°C"
#~ msgstr "°C"
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Textured Cool Plate."
#~ msgstr "Ohearen tenperatura hasierakoa ez diren geruzetarako. 0 balioak esan nahi du filamentuak ez duela testuradun plaka hotzean inprimatzea onartzen."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Engineering Plate."
#~ msgstr "Ohearen tenperatura hasierakoa ez diren geruzetarako. 0 balioak esan nahi du filamentuak ez duela ingeniaritza-plakan inprimatzea onartzen."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the High Temp Plate."
#~ msgstr "Ohearen tenperatura hasierakoa ez diren geruzetarako. 0 balioak esan nahi du filamentuak ez duela tenperatura altuko plakan inprimatzea onartzen."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Textured PEI Plate."
#~ msgstr "Ohearen tenperatura hasierakoa ez diren geruzetarako. 0 balioak esan nahi du filamentuak ez duela testuradun PEI plakan inprimatzea onartzen."
#~ msgid "Initial layer" #~ msgid "Initial layer"
#~ msgstr "Hasierako geruza" #~ msgstr "Hasierako geruza"

View File

@@ -6,7 +6,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: Guislain Cyril, Thomas Lété\n" "Language-Team: Guislain Cyril, Thomas Lété\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n==0 || n==1) ? 0 : 1;\n" "Plural-Forms: nplurals=2; plural=(n==0 || n==1) ? 0 : 1;\n"
"X-Generator: Poedit 3.6\n" "X-Generator: Poedit 3.9\n"
# AI Translated # AI Translated
msgid "Main Extruder" msgid "Main Extruder"
@@ -2896,6 +2896,10 @@ msgstr "Éditer"
msgid "Merge with" msgid "Merge with"
msgstr "Fusionner avec" msgstr "Fusionner avec"
# AI Translated
msgid "Decompose Color"
msgstr "Décomposer la couleur"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Supprimer ce filament" msgstr "Supprimer ce filament"
@@ -3178,6 +3182,10 @@ msgstr "Assemblé"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Fusionner les pièces en un objet" msgstr "Fusionner les pièces en un objet"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Lutilisation dune hauteur de couche variable avec la sous-couche de couleur mixte peut dégrader la qualité du mélange des couleurs."
msgid "Add layers" msgid "Add layers"
msgstr "Ajouter des couches" msgstr "Ajouter des couches"
@@ -4707,7 +4715,7 @@ msgstr ""
"\n" "\n"
"La valeur sera remise à 0." "La valeur sera remise à 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "La paroi supplémentaire alternée ne fonctionne pas bien lorsque le paramètre Assurer lépaisseur de la coque verticale est réglée sur Tous." msgstr "La paroi supplémentaire alternée ne fonctionne pas bien lorsque le paramètre Assurer lépaisseur de la coque verticale est réglée sur Tous."
msgid "" msgid ""
@@ -4753,7 +4761,7 @@ msgstr ""
"NON - Conserver la hauteur de la couche de support indépendante" "NON - Conserver la hauteur de la couche de support indépendante"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height doit être inférieur à la hauteur de couche.\n" "seam_slope_start_height doit être inférieur à la hauteur de couche.\n"
@@ -4761,7 +4769,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"La profondeur de verrouillage doit être inférieure à la profondeur de la peau.\n" "La profondeur de verrouillage doit être inférieure à la profondeur de la peau.\n"
@@ -4801,6 +4809,9 @@ msgstr ""
"Oui - Modifiez ces paramètres et activez automatiquement le mode spirale/vase\n" "Oui - Modifiez ces paramètres et activez automatiquement le mode spirale/vase\n"
"Non - Annuler l'activation du mode spirale" "Non - Annuler l'activation du mode spirale"
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Impression" msgstr "Impression"
@@ -5260,9 +5271,6 @@ msgstr "Motif invalide. Utilisez N, N#K, ou une liste séparée par des virgules
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Format invalide. Format vectoriel attendu : \"%1%\"" msgstr "Format invalide. Format vectoriel attendu : \"%1%\""
msgid "N/A"
msgstr "N/A"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Agents système" msgstr "Agents système"
@@ -6215,16 +6223,22 @@ msgstr "Enregistrer le projet sous"
msgid "Save current project as" msgid "Save current project as"
msgstr "Enregistrer le projet actuel sous" msgstr "Enregistrer le projet actuel sous"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importer des fichiers 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importer des fichiers 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Charger un modèle" msgstr "Charger un modèle"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importer une archive Zip" msgstr "Importer une archive Zip"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Charger les modèles contenus dans une archive zip" msgstr "Charger les modèles contenus dans une archive zip"
msgid "Import Configs" msgid "Import Configs"
@@ -7733,6 +7747,10 @@ msgstr "Personnaliser le plateau actuel"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "La buse %s ne peut pas imprimer %s." msgstr "La buse %s ne peut pas imprimer %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Limpression dun filament de couleur mixte sur une imprimante à extrudeur unique nécessite des changements de filament et des purges fréquents, ce qui peut augmenter considérablement les déchets et le risque dobstruction de la buse ou de la goulotte à déchets."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Le mélange de %1% avec %2% lors de l'impression n'est pas recommandé.\n" msgstr "Le mélange de %1% avec %2% lors de l'impression n'est pas recommandé.\n"
@@ -7858,12 +7876,44 @@ msgstr "Synchroniser la liste des filaments depuis l'AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Définir les filaments à utiliser" msgstr "Définir les filaments à utiliser"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Ajouter un filament mixte"
# AI Translated
msgid "Mixed Filament"
msgstr "Filament mixte"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Supprimer le dernier filament mixte"
# AI Translated
msgid "Add mixed filament"
msgstr "Ajouter un filament mixte"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Le filament mixte comporte des composants invalides ou incohérents. Veuillez modifier à nouveau les entrées concernées."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Recherche de plaque, d'objet et de pièce." msgstr "Recherche de plaque, d'objet et de pièce."
msgid "Pellets" msgid "Pellets"
msgstr "Granulés" msgstr "Granulés"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Le filament mixte comporte des références de composants invalides"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Éditer / Supprimer / Fusionner"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Le filament mixte cible utilise ce filament physique comme composant. La fusion supprimera ce filament physique et risque de rendre le filament mixte invalide. Continuer ?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Une fois votre opération terminée, le projet %s sera fermé et un nouveau projet sera créé." msgstr "Une fois votre opération terminée, le projet %s sera fermé et un nouveau projet sera créé."
@@ -8000,7 +8050,13 @@ msgstr "Veuillez vous assurer que les G-codes de ces préréglages sont sûrs af
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Préréglage personnalisé" msgstr "Préréglage personnalisé"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Le nom des composants dans le fichier STEP n'est pas au format UTF-8 !" msgstr "Le nom des composants dans le fichier STEP n'est pas au format UTF-8 !"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -8022,10 +8078,10 @@ msgstr "Le volume de l'objet est nul"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Lobjet du fichier %s est trop petit, et est peut-être en mètres ou en pouces.\n" "Lobjet du fichier %s est trop petit, et est peut-être en mètres ou en pouces.\n"
" Voulez-vous le mettre à léchelle en millimètres ?" "Voulez-vous le mettre à léchelle en millimètres ?"
msgid "Object too small" msgid "Object too small"
msgstr "Objet trop petit" msgstr "Objet trop petit"
@@ -8042,6 +8098,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Objet en plusieurs pièces détecté" msgstr "Objet en plusieurs pièces détecté"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Association des textures aux filaments"
# AI Translated
msgid "Texture Import Warning"
msgstr "Avertissement dimportation de texture"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Charger ces fichiers en tant qu'objet unique avec plusieurs parties ?\n" msgstr "Charger ces fichiers en tant qu'objet unique avec plusieurs parties ?\n"
@@ -8246,6 +8310,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Synchroniser maintenant" msgstr "Synchroniser maintenant"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Échec de limportation de la texture. Le modèle semble contenir des données de texture, mais le processus dimportation na pas pu être mené à son terme. Le modèle sera importé en tant que géométrie uniquement."
# AI Translated
msgid "Applying texture colors..."
msgstr "Application des couleurs de texture..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Mise à jour de la vue 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "Couleurs de texture appliquées."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Vous pouvez conserver les préréglages modifiés dans le nouveau projet ou les supprimer" msgstr "Vous pouvez conserver les préréglages modifiés dans le nouveau projet ou les supprimer"
@@ -8377,6 +8457,17 @@ msgstr "Enregistrer le fichier découpé sous :"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Le fichier %s a été envoyé vers l'espace de stockage de l'imprimante et peut être visualisé sur l'imprimante." msgstr "Le fichier %s a été envoyé vers l'espace de stockage de l'imprimante et peut être visualisé sur l'imprimante."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publier"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Le type de buse n'est pas défini. Veuillez définir la buse et réessayer." msgstr "Le type de buse n'est pas défini. Veuillez définir la buse et réessayer."
@@ -9477,6 +9568,10 @@ msgstr "Vase spirale"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Séquence dimpression de la première couche" msgstr "Séquence dimpression de la première couche"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "La liste des filaments contient des filaments mixtes. La séquence de filaments personnalisée ne sera pas appliquée."
msgid "By Layer" msgid "By Layer"
msgstr "Par Couche" msgstr "Par Couche"
@@ -9504,9 +9599,6 @@ msgstr "Accéder à la page internet de publication des modèles"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Remarque : La préparation peut prendre plusieurs minutes. Veuillez patienter." msgstr "Remarque : La préparation peut prendre plusieurs minutes. Veuillez patienter."
msgid "Publish"
msgstr "Publier"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "La publication a été annulée" msgstr "La publication a été annulée"
@@ -9522,6 +9614,64 @@ msgstr "Téléversement des données"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Ouvrir la page internet" msgstr "Ouvrir la page internet"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Enregistrer %s sous" msgstr "Enregistrer %s sous"
@@ -10707,7 +10857,7 @@ msgid "Acceleration limitation"
msgstr "Limitation d'accélération" msgstr "Limitation d'accélération"
msgid "Jerk limitation" msgid "Jerk limitation"
msgstr "Limitation des secousses" msgstr "Limitation du jerk"
msgid "Single extruder multi-material setup" msgid "Single extruder multi-material setup"
msgstr "Configuration multi-matériaux pour extrudeur unique" msgstr "Configuration multi-matériaux pour extrudeur unique"
@@ -10854,11 +11004,11 @@ msgstr "%s : %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Aucune modification à copier." msgstr "Aucune modification à copier."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Copier les paramètres" msgstr "Copier les paramètres"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Modifier les paramètres de %s" msgstr "Modifier les paramètres de %s"
#, c-format, boost-format #, c-format, boost-format
@@ -11369,27 +11519,6 @@ msgstr "Volumes de purge pour le changement de filament"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Veuillez choisir la couleur du filament" msgstr "Veuillez choisir la couleur du filament"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Laperçu en direct natif sous Wayland nécessite le récepteur vidéo GStreamer GTK. Veuillez installer le plugin gtksink pour GStreamer, puis redémarrer OrcaSlicer."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Échec de linitialisation du récepteur vidéo GStreamer natif sous Wayland. Veuillez vérifier linstallation de votre plugin GStreamer GTK."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Windows Media Player est nécessaire pour cette tâche ! Voulez-vous activer Windows Media Player pour votre système dexploitation ?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource na pas été correctement enregistré pour la lecture de médias ! Appuyez sur Oui pour le réenregistrer. Vous recevrez deux fois la demande de permission"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Composant BambuSource manquant pour la lecture multimédia ! Veuillez réinstaller OrcaSlicer ou demander de l'aide à la communauté."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Si vous utilisez une BambuSource provenant dune autre installation, la lecture de la vidéo peut ne pas fonctionner correctement ! Appuyez sur Oui pour résoudre le problème."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Il manque à votre système les codecs H.264 pour GStreamer, qui sont nécessaires pour lire la vidéo. (Essayez dinstaller les paquets gstreamer1.0-plugins-bad ou gstreamer1.0-libav, puis redémarrez Orca Slicer)."
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Lagent cloud nest pas disponible. Veuillez redémarrer OrcaSlicer et réessayer." msgstr "Lagent cloud nest pas disponible. Veuillez redémarrer OrcaSlicer et réessayer."
@@ -12092,6 +12221,10 @@ msgstr "Si vous souhaitez tout de même imprimer, vous pouvez activer loption
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Aucune extrusion dans les paramètres actuels." msgstr "Aucune extrusion dans les paramètres actuels."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Un filament mixte avec dégradé est utilisé, mais « Sous-couche de couleur mixte » est désactivé. Le dégradé ne sera pas imprimé."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Le mode fluide du timelapse n'est pas pris en charge lorsque le mode d'impression « par objet » est activé." msgstr "Le mode fluide du timelapse n'est pas pris en charge lorsque le mode d'impression « par objet » est activé."
@@ -12128,6 +12261,10 @@ msgstr "Vous devez réduire la taille de votre modèle ou modifier les paramètr
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "La hauteur de couche variable nest pas prise en charge avec les supports organiques." msgstr "La hauteur de couche variable nest pas prise en charge avec les supports organiques."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Le filament de la tour dessuyage ne peut pas être un filament mixte."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Différents diamètres de buses et de filaments peuvent ne pas fonctionner correctement lorsque la tour damorçage est activée. Il sagit dun projet très expérimental, il convient donc de procéder avec prudence." msgstr "Différents diamètres de buses et de filaments peuvent ne pas fonctionner correctement lorsque la tour damorçage est activée. Il sagit dun projet très expérimental, il convient donc de procéder avec prudence."
@@ -12226,7 +12363,7 @@ msgid "Plate %d: %s does not support filament %s"
msgstr "Plaque %d : %s ne prend pas en charge le filament %s" msgstr "Plaque %d : %s ne prend pas en charge le filament %s"
msgid "Setting the jerk speed too low could lead to artifacts on curved surfaces" msgid "Setting the jerk speed too low could lead to artifacts on curved surfaces"
msgstr "Un réglage trop bas de la vitesse de saccade peut entraîner des artefacts sur les surfaces courbes" msgstr "Un réglage trop bas de la vitesse de jerk peut entraîner des artefacts sur les surfaces courbes"
msgid "" msgid ""
"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/machine_max_jerk_y).\n" "The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/machine_max_jerk_y).\n"
@@ -12234,7 +12371,7 @@ msgid ""
"You can adjust the maximum jerk setting in your printer's configuration to get higher speeds." "You can adjust the maximum jerk setting in your printer's configuration to get higher speeds."
msgstr "" msgstr ""
"Le réglage du jerk dépasse le jerk maximum de limprimante (machine_max_jerk_x/machine_max_jerk_y).\n" "Le réglage du jerk dépasse le jerk maximum de limprimante (machine_max_jerk_x/machine_max_jerk_y).\n"
"Orca plafonne automatiquement la vitesse de limpulsion pour sassurer quelle ne dépasse pas les capacités de limprimante.\n" "Orca plafonne automatiquement la vitesse du jerk pour sassurer quelle ne dépasse pas les capacités de limprimante.\n"
"Vous pouvez ajuster le réglage du jerk maximum dans la configuration de votre imprimante pour obtenir des vitesses plus élevées." "Vous pouvez ajuster le réglage du jerk maximum dans la configuration de votre imprimante pour obtenir des vitesses plus élevées."
msgid "" msgid ""
@@ -12475,7 +12612,7 @@ msgstr "mm ou %"
msgid "Other layers" msgid "Other layers"
msgstr "Autres couches" msgstr "Autres couches"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Température du plateau pour les couches sauf la première. Une valeur de 0 signifie que le filament ne prend pas en charge l'impression sur la Cool Plate SuperTack." msgstr "Température du plateau pour les couches sauf la première. Une valeur de 0 signifie que le filament ne prend pas en charge l'impression sur la Cool Plate SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13831,6 +13968,8 @@ msgstr "Temps de couche"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Le ventilateur de refroidissement des pièces sera activé pour les couches dont le temps estimé est inférieur à cette valeur. La vitesse du ventilateur est interpolée entre les vitesses minimale et maximale du ventilateur en fonction du temps d'impression de la couche" msgstr "Le ventilateur de refroidissement des pièces sera activé pour les couches dont le temps estimé est inférieur à cette valeur. La vitesse du ventilateur est interpolée entre les vitesses minimale et maximale du ventilateur en fonction du temps d'impression de la couche"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14137,6 +14276,62 @@ msgstr "Supports"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Le matériau de support est généralement utilisé pour imprimer le support et les interfaces de support" msgstr "Le matériau de support est généralement utilisé pour imprimer le support et les interfaces de support"
# AI Translated
msgid "Is mixed filament"
msgstr "Est un filament mixte"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Indique si cet emplacement de filament est un filament mixte composé de plusieurs filaments physiques"
# AI Translated
msgid "Mixed filament components"
msgstr "Composants du filament mixte"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Indices (à partir de 1) des filaments composants, séparés par des virgules ; par ex. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Proportions des sous-couches du filament mixte"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Valeurs de proportion séparées par des virgules dont la somme vaut 1.0 ; par ex. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Dégradé du filament mixte"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Active le mode dégradé dans la direction Z pour les sous-couches du filament mixte. Lorsquil est activé, les proportions des sous-couches varient linéairement dune couche à lautre."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Plage du dégradé du filament mixte"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Proportions de début et de fin du premier composant en mode dégradé. Paire séparée par une virgule ; par ex. \"0.10,0.90\" signifie de 10% à 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Courbe du dégradé du filament mixte"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Courbe personnalisée facultative, de style Photoshop, associant la progression en Z à la proportion du premier composant. Encodée sous forme de points de contrôle séparés par des barres verticales, au format \"x,y\" (ancien) ou \"x,y,m_in,m_out\" lorsquune tangente doit être forcée (une valeur vide ou \"nan\" utilise la valeur PCHIP par défaut). x est compris dans [0,1] ; y est limité à la plage de proportions configurée ; par ex. \"0,0.15|0.5,0.50|1,0.85\". Si le champ est vide, le gradient_range linéaire est utilisé à la place."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Dégradé par pièce du filament mixte"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Lorsque le mode dégradé est activé, applique le dégradé à chaque pièce dun assemblage indépendamment au lieu de traiter lassemblage entier comme une seule plage Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament imprimable" msgstr "Filament imprimable"
@@ -15382,6 +15577,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Force de sortie maximale autorisée sur l'axe Y" msgstr "Force de sortie maximale autorisée sur l'axe Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15392,6 +15588,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Charge massique du plateau de la machine sur l'axe Y" msgstr "Charge massique du plateau de la machine sur l'axe Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15703,7 +15900,7 @@ msgstr "Les points de départ et d'arrivée qui se situent entre la zone de coup
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Réduire la rétraction du remplissage" msgstr "Réduire la rétraction du remplissage"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Ne pas effectuer de rétraction lors de déplacement en zone de remplissage car même si lextrudeur suinte, les coulures ne seraient pas visibles. Cela peut réduire les rétractions pour les modèles complexes et économiser du temps dimpression, mais ralentit la découpe et la génération du G-code" msgstr "Ne pas effectuer de rétraction lors de déplacement en zone de remplissage car même si lextrudeur suinte, les coulures ne seraient pas visibles. Cela peut réduire les rétractions pour les modèles complexes et économiser du temps dimpression, mais ralentit la découpe et la génération du G-code"
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -15873,7 +16070,7 @@ msgstr "Quantité de rétraction après essuyage"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"La longueur de la rétraction rapide après l'essuyage, relative à la longueur de rétraction.\n" "La longueur de la rétraction rapide après l'essuyage, relative à la longueur de rétraction.\n"
@@ -15920,7 +16117,7 @@ msgstr "Lorsque la rétraction est déclenchée avant un changement doutil, l
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Hauteur du saut en Z" msgstr "Hauteur du saut en Z"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Chaque fois que la rétraction est effectuée, la buse est légèrement soulevée pour créer un espace entre la buse et l'impression. Il empêche la buse de toucher l'impression lors du déplacement. L'utilisation d'une ligne en spirale pour soulever z peut empêcher l'enfilage" msgstr "Chaque fois que la rétraction est effectuée, la buse est légèrement soulevée pour créer un espace entre la buse et l'impression. Il empêche la buse de toucher l'impression lors du déplacement. L'utilisation d'une ligne en spirale pour soulever z peut empêcher l'enfilage"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -16965,6 +17162,14 @@ msgstr ""
"\n" "\n"
"Le réglage dune valeur dans le paramètre de quantité de rétraction avant essuyage ci-dessous permet deffectuer toute rétraction excédentaire avant lessuyage, sinon elle sera effectuée après lessuyage." "Le réglage dune valeur dans le paramètre de quantité de rétraction avant essuyage ci-dessous permet deffectuer toute rétraction excédentaire avant lessuyage, sinon elle sera effectuée après lessuyage."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Sous-couche de couleur mixte"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Active la division en sous-couches de couleur mixte. Lorsquelle est activée, les couches contenant des filaments de couleur mixte sont divisées en sous-couches afin dobtenir des effets de mélange de couleurs."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "La tour de purge peut être utilisée pour nettoyer les résidus sur la buse et stabiliser la pression du caisson à l'intérieur de la buse afin d'éviter les défauts d'apparence lors de l'impression d'objets." msgstr "La tour de purge peut être utilisée pour nettoyer les résidus sur la buse et stabiliser la pression du caisson à l'intérieur de la buse afin d'éviter les défauts d'apparence lors de l'impression d'objets."
@@ -18031,6 +18236,10 @@ msgstr "Le maillage d'un fichier modèle a échoué ou la forme n'est pas valide
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Le fichier fourni n'a pas pu être lu car il est vide" msgstr "Le fichier fourni n'a pas pu être lu car il est vide"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Le format du fichier est incompatible et ne peut pas être analysé."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Format de fichier inconnu : le fichier d'entrée doit porter l'extension .stl, .obj ou .amf (.xml)." msgstr "Format de fichier inconnu : le fichier d'entrée doit porter l'extension .stl, .obj ou .amf (.xml)."
@@ -19492,19 +19701,19 @@ msgstr "Nafficher que les noms dimprimantes avec les modifications apport
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Naffichez que les noms des filaments lorsque vous modifiez les préréglages des filaments." msgstr "Naffichez que les noms des filaments lorsque vous modifiez les préréglages des filaments."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Seuls les noms dimprimantes avec des préréglages dimprimante utilisateur seront affichés, et chaque préréglage que vous choisissez sera exporté sous forme de fichier zip." msgstr "Seuls les noms dimprimantes avec des préréglages dimprimante utilisateur seront affichés, et chaque préréglage que vous choisissez sera exporté sous forme de fichier zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Seuls les noms de filaments contenant des préréglages de filaments utilisateur seront affichés, \n" "Seuls les noms de filaments contenant des préréglages de filaments utilisateur seront affichés, \n"
"et tous les préréglages de filament dutilisateur dans chaque nom de filament que vous sélectionnez seront exportés sous forme de fichier zip." "et tous les préréglages de filament dutilisateur dans chaque nom de filament que vous sélectionnez seront exportés sous forme de fichier zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Seuls les noms dimprimantes dont les préréglages de traitement ont été modifiés seront affichés, \n" "Seuls les noms dimprimantes dont les préréglages de traitement ont été modifiés seront affichés, \n"
"et tous les préréglages de processus de lutilisateur dans chaque nom dimprimante que vous sélectionnez seront exportés sous forme de fichier zip." "et tous les préréglages de processus de lutilisateur dans chaque nom dimprimante que vous sélectionnez seront exportés sous forme de fichier zip."
@@ -19733,7 +19942,7 @@ msgstr "Copier les informations système dans le presse-papiers"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Nous avons besoin dinformations pour diagnostiquer lorigine du problème. Consultez la page wiki pour un guide détaillé." msgstr "Nous avons besoin dinformations pour diagnostiquer lorigine du problème. Consultez la page wiki pour un guide détaillé."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Le bouton Compresser rassemble le fichier de projet et les journaux de la session actuelle dans un fichier ZIP." msgstr "Le bouton Compresser rassemble le fichier de projet et les journaux de la session actuelle dans un fichier ZIP."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -19775,7 +19984,7 @@ msgstr "Niveau de journalisation"
msgid "Stored logs" msgid "Stored logs"
msgstr "Journaux stockés" msgstr "Journaux stockés"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Compresse tous les journaux stockés dans un fichier ZIP." msgstr "Compresse tous les journaux stockés dans un fichier ZIP."
msgid "Profiles" msgid "Profiles"
@@ -19842,7 +20051,7 @@ msgstr "Type dimprimante introuvable, veuillez le sélectionner manuellement.
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Autorisation en cours…" msgstr "Autorisation en cours…"
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Erreur : impossible dobtenir le jeton dAPI pour lautorisation" msgstr "Erreur : impossible dobtenir le jeton dAPI pour lautorisation"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20290,8 +20499,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Activer l'attribution intelligente de filament : attribuer un filament à plusieurs buses pour maximiser les économies" msgstr "Activer l'attribution intelligente de filament : attribuer un filament à plusieurs buses pour maximiser les économies"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Économie de filament" msgstr "Enregistrement du fichier"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Ne plus me rappeler" msgstr "Ne plus me rappeler"
@@ -20577,6 +20786,15 @@ msgstr "Cette action ne peut pas être annulée. Continuer ?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Ignorer des objets." msgstr "Ignorer des objets."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Sélectionner le filament" msgstr "Sélectionner le filament"
@@ -20656,6 +20874,9 @@ msgstr "Redémarrer maintenant"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "AUCUN BOURRAGE" msgstr "AUCUN BOURRAGE"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Vitesse volumétrique" msgstr "Vitesse volumétrique"
@@ -21278,6 +21499,39 @@ msgstr ""
"Éviter la déformation\n" "Éviter la déformation\n"
"Saviez-vous que lors de limpression de matériaux susceptibles de se déformer, tels que lABS, une augmentation appropriée de la température du plateau chauffant peut réduire la probabilité de déformation?" "Saviez-vous que lors de limpression de matériaux susceptibles de se déformer, tels que lABS, une augmentation appropriée de la température du plateau chauffant peut réduire la probabilité de déformation?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Laperçu en direct natif sous Wayland nécessite le récepteur vidéo GStreamer GTK. Veuillez installer le plugin gtksink pour GStreamer, puis redémarrer OrcaSlicer."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Échec de linitialisation du récepteur vidéo GStreamer natif sous Wayland. Veuillez vérifier linstallation de votre plugin GStreamer GTK."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Windows Media Player est nécessaire pour cette tâche ! Voulez-vous activer Windows Media Player pour votre système dexploitation ?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource na pas été correctement enregistré pour la lecture de médias ! Appuyez sur Oui pour le réenregistrer. Vous recevrez deux fois la demande de permission"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Composant BambuSource manquant pour la lecture multimédia ! Veuillez réinstaller OrcaSlicer ou demander de l'aide à la communauté."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Si vous utilisez une BambuSource provenant dune autre installation, la lecture de la vidéo peut ne pas fonctionner correctement ! Appuyez sur Oui pour résoudre le problème."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Il manque à votre système les codecs H.264 pour GStreamer, qui sont nécessaires pour lire la vidéo. (Essayez dinstaller les paquets gstreamer1.0-plugins-bad ou gstreamer1.0-libav, puis redémarrez Orca Slicer)."
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Économie de filament"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"
@@ -22161,8 +22415,8 @@ msgstr ""
#~ msgid "The 3mf has the following customized filament or printer presets:" #~ msgid "The 3mf has the following customized filament or printer presets:"
#~ msgstr "Le 3mf dispose de filaments personnalisés ou de préréglages d'imprimante :" #~ msgstr "Le 3mf dispose de filaments personnalisés ou de préréglages d'imprimante :"
#~ msgid "Name of components inside step file is not UTF8 format!" #~ msgid "Name of components inside step file is not UTF-8 format!"
#~ msgstr "Le nom des composants à l'intérieur du fichier .step n'est pas au format UTF8 !" #~ msgstr "Le nom des composants à l'intérieur du fichier .step n'est pas au format UTF-8 !"
#~ msgid "Should printer/filament/process settings be loaded when opening a .3mf?" #~ msgid "Should printer/filament/process settings be loaded when opening a .3mf?"
#~ msgstr "Les paramètres de limprimante/du filament/du processus doivent-ils être chargés lors de louverture dun fichier .3mf ?" #~ msgstr "Les paramètres de limprimante/du filament/du processus doivent-ils être chargés lors de louverture dun fichier .3mf ?"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"Language: hu\n" "Language: hu\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@@ -2948,6 +2948,10 @@ msgstr "Szerkesztés"
msgid "Merge with" msgid "Merge with"
msgstr "Egyesítés ezzel" msgstr "Egyesítés ezzel"
# AI Translated
msgid "Decompose Color"
msgstr "Szín szétbontása"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Filament törlése" msgstr "Filament törlése"
@@ -3247,6 +3251,10 @@ msgstr "Összeállítás"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Tárgyak egyesítése egy objektummá" msgstr "Tárgyak egyesítése egy objektummá"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "A változó rétegmagasság és a kevert színű alréteg együttes használata ronthatja a színkeverés minőségét."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Rétegek hozzáadása" msgstr "Rétegek hozzáadása"
@@ -4803,7 +4811,7 @@ msgstr ""
"\n" "\n"
"Az érték 0-ra áll vissza." "Az érték 0-ra áll vissza."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "A váltakozó extra fal nem működik jól, ha a függőleges héjvastagság biztosítása \"Mind\" értékre van állítva." msgstr "A váltakozó extra fal nem működik jól, ha a függőleges héjvastagság biztosítása \"Mind\" értékre van állítva."
msgid "" msgid ""
@@ -4849,7 +4857,7 @@ msgstr ""
"NEM - Független támasz rétegmagasság megtartása" "NEM - Független támasz rétegmagasság megtartása"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"A seam_slope_start_height értékének kisebbnek kell lennie, mint a layer_height.\n" "A seam_slope_start_height értékének kisebbnek kell lennie, mint a layer_height.\n"
@@ -4857,7 +4865,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"A rögzítési mélységnek kisebbnek kell lennie, mint a felületi réteg mélysége.\n" "A rögzítési mélységnek kisebbnek kell lennie, mint a felületi réteg mélysége.\n"
@@ -4897,6 +4905,10 @@ msgstr ""
"Igen - Módosítsd ezeket a beállításokat, és automatikusan kapcsold be a spirál módot\n" "Igen - Módosítsd ezeket a beállításokat, és automatikusan kapcsold be a spirál módot\n"
"Nem - Most ne kapcsold be a spirál módot" "Nem - Most ne kapcsold be a spirál módot"
# AI Translated
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Nyomtatás" msgstr "Nyomtatás"
@@ -5356,10 +5368,6 @@ msgstr "Érvénytelen minta. Használj N, N#K formátumot, vagy vesszővel elvá
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Érvénytelen formátum. Elvárt vektor formátum: \"%1%\"" msgstr "Érvénytelen formátum. Elvárt vektor formátum: \"%1%\""
# AI Translated
msgid "N/A"
msgstr "N/A"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Rendszerügynökök" msgstr "Rendszerügynökök"
@@ -6317,16 +6325,22 @@ msgstr "Projekt mentése másként"
msgid "Save current project as" msgid "Save current project as"
msgstr "Jelenlegi projekt mentése másként" msgstr "Jelenlegi projekt mentése másként"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importálás 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importálás 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Modell betöltése" msgstr "Modell betöltése"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Zip archívum importálása" msgstr "Zip archívum importálása"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Zip archívumban található modellek betöltése" msgstr "Zip archívumban található modellek betöltése"
msgid "Import Configs" msgid "Import Configs"
@@ -7847,6 +7861,10 @@ msgstr "Aktuális tálca testreszabása"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "A(z) %s fúvóka nem tudja nyomtatni ezt: %s." msgstr "A(z) %s fúvóka nem tudja nyomtatni ezt: %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "A kevert színű filament nyomtatása egyextruderes nyomtatón gyakori filamentcserét és öblítést igényel, ami jelentősen növelheti a hulladék mennyiségét, valamint a fúvóka vagy a hulladékcsúszda eltömődésének kockázatát."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "A(z) %1% és %2% keverése nyomtatás közben nem ajánlott.\n" msgstr "A(z) %1% és %2% keverése nyomtatás közben nem ajánlott.\n"
@@ -7972,12 +7990,44 @@ msgstr "Filamentlista szinkronizálása az AMS-ből"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Használni kívánt filament beállítása" msgstr "Használni kívánt filament beállítása"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Kevert filament hozzáadása"
# AI Translated
msgid "Mixed Filament"
msgstr "Kevert filament"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Utolsó kevert filament eltávolítása"
# AI Translated
msgid "Add mixed filament"
msgstr "Kevert filament hozzáadása"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "A kevert filament érvénytelen vagy nem egyező összetevőket tartalmaz. Szerkessze újra az érintett bejegyzéseket."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Tálca, objektum és tárgy keresése." msgstr "Tálca, objektum és tárgy keresése."
msgid "Pellets" msgid "Pellets"
msgstr "Pelletek" msgstr "Pelletek"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "A kevert filament hibás összetevő-hivatkozásokat tartalmaz"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Szerkesztés / Törlés / Egyesítés"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "A cél kevert filament ezt a fizikai filamentet használja összetevőként. Az egyesítés eltávolítja ezt a fizikai filamentet, és a kevert filament érvénytelenné válhat. Folytatja?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "A művelet befejezésekor a(z) %s projekt bezárul, majd új projekt jön létre." msgstr "A művelet befejezésekor a(z) %s projekt bezárul, majd új projekt jön létre."
@@ -8115,7 +8165,13 @@ msgstr "Kérlek, győződj meg arról, hogy a beállításokban található G-k
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Egyedi beállítás" msgstr "Egyedi beállítás"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "A STEP fájlon belüli komponens neve nem UTF-8 formátumban van!" msgstr "A STEP fájlon belüli komponens neve nem UTF-8 formátumban van!"
# AI Translated # AI Translated
@@ -8139,10 +8195,10 @@ msgstr "Az objektum térfogata nulla"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"A(z) %s fájlból származó objektum túl kicsi, lehet, hogy méterben vagy hüvelykben lett létrehozva.\n" "A(z) %s fájlból származó objektum túl kicsi, lehet, hogy méterben vagy hüvelykben lett létrehozva.\n"
" Szeretnéd milliméterre méretezni?" "Szeretnéd milliméterre méretezni?"
msgid "Object too small" msgid "Object too small"
msgstr "Objektum túl kicsi" msgstr "Objektum túl kicsi"
@@ -8160,6 +8216,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Több részből álló objektum észlelve" msgstr "Több részből álló objektum észlelve"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Textúrák hozzárendelése a filamentekhez"
# AI Translated
msgid "Texture Import Warning"
msgstr "Textúraimportálási figyelmeztetés"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Betöltöd ezeket a fájlokat több részből álló egyetlen objektumként?\n" msgstr "Betöltöd ezeket a fájlokat több részből álló egyetlen objektumként?\n"
@@ -8371,6 +8435,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Szinkronizálás most" msgstr "Szinkronizálás most"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "A textúra importálása sikertelen. Úgy tűnik, hogy a modell textúraadatokat tartalmaz, de az importálási folyamatot nem sikerült befejezni. A modell csak geometriaként lesz importálva."
# AI Translated
msgid "Applying texture colors..."
msgstr "Textúraszínek alkalmazása..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3D nézet frissítése..."
# AI Translated
msgid "Texture colors applied."
msgstr "A textúraszínek alkalmazva."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Megtarthatod az új projekt módosított beállításait, vagy elvetheted őket" msgstr "Megtarthatod az új projekt módosított beállításait, vagy elvetheted őket"
@@ -8503,6 +8583,17 @@ msgstr "Szeletelt fájl mentése mint:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "A(z) %s fájlt elküldtük a nyomtató tárhelyére. A fájl a nyomtatón tekinthető meg." msgstr "A(z) %s fájlt elküldtük a nyomtató tárhelyére. A fájl a nyomtatón tekinthető meg."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Közzététel"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "A fúvókatípus nincs beállítva. Állítsd be a fúvókát, majd próbáld újra." msgstr "A fúvókatípus nincs beállítva. Állítsd be a fúvókát, majd próbáld újra."
@@ -9633,6 +9724,10 @@ msgstr "Spirál (váza)"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Kezdőréteg filament sorrendje" msgstr "Kezdőréteg filament sorrendje"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "A filamentlista kevert filamenteket tartalmaz. Az egyéni filamentsorrend nem lép érvénybe."
# AI Translated # AI Translated
msgid "By Layer" msgid "By Layer"
msgstr "Rétegenként" msgstr "Rétegenként"
@@ -9664,9 +9759,6 @@ msgstr "Ugrás a modell közzététele weboldalra"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Megjegyzés: Az előkészítés több percig is eltarthat. Kérlek, várj." msgstr "Megjegyzés: Az előkészítés több percig is eltarthat. Kérlek, várj."
msgid "Publish"
msgstr "Közzététel"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "A közzététel törlésre került" msgstr "A közzététel törlésre került"
@@ -9682,6 +9774,64 @@ msgstr "Adatok feltöltése"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Ugrás a weboldalra" msgstr "Ugrás a weboldalra"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "%s mentése" msgstr "%s mentése"
@@ -11030,12 +11180,12 @@ msgid "No modifications need to be copied."
msgstr "Nincs másolandó módosítás." msgstr "Nincs másolandó módosítás."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Paraméterek másolása" msgstr "Paraméterek másolása"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "A(z) %s paramétereinek módosítása" msgstr "A(z) %s paramétereinek módosítása"
# AI Translated # AI Translated
@@ -11552,27 +11702,6 @@ msgstr "Filamentcsere öblítési mennyisége"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Kérlek, válaszd ki a filament színét" msgstr "Kérlek, válaszd ki a filament színét"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "A natív Wayland élőképhez a GStreamer GTK videonyelő szükséges. Telepítsd a gtksink beépülő modult a GStreamerhez, majd indítsd újra az OrcaSlicert."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Nem sikerült inicializálni a natív Wayland GStreamer videonyelőt. Ellenőrizd a GStreamer GTK bővítmény telepítését."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Ehhez a művelethez Windows Media Player szükséges. Szeretnéd engedélyezni a \"Windows Media Player\"-t az operációs rendszerben?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "A BambuSource nincs megfelelően regisztrálva médialejátszáshoz. Kattints az Igen gombra az újbóli regisztráláshoz. Kétszer kapsz majd megerősítési kérést."
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "A médialejátszáshoz szükséges BambuSource-összetevő hiányzik. Kérlek, telepítsd újra az OrcaSlicert, vagy kérj segítséget a közösségtől."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Ha egy másik telepítésből származó BambuSource van használatban, előfordulhat, hogy a videólejátszás nem működik megfelelően. Kattints az Igen gombra a javításhoz."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "A rendszerből hiányoznak a GStreamer H.264 kodekjei, amelyek szükségesek a videolejátszáshoz. (Próbáld telepíteni a gstreamer1.0-plugins-bad vagy a gstreamer1.0-libav csomagokat, majd indítsd újra az Orca Slicert.)"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "A felhőszolgáltatás nem érhető el. Indítsd újra az OrcaSlicert, majd próbáld újra." msgstr "A felhőszolgáltatás nem érhető el. Indítsd újra az OrcaSlicert, majd próbáld újra."
@@ -12282,6 +12411,10 @@ msgstr "Ha továbbra is szeretnél nyomtatni, engedélyezheted az opciót itt: B
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "A jelenlegi beállításokkal nincsenek extrudálások." msgstr "A jelenlegi beállításokkal nincsenek extrudálások."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Színátmenetes kevert filament van használatban, de a 'Kevert színű alréteg' ki van kapcsolva. A színátmenet nem lesz kinyomtatva."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "A sima Timelapse nem használható, ha a nyomtatási sorrend \"Tárgyanként\"." msgstr "A sima Timelapse nem használható, ha a nyomtatási sorrend \"Tárgyanként\"."
@@ -12318,6 +12451,10 @@ msgstr "Próbáld meg csökkenteni a modell méretét vagy módosítani a jelenl
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "A változó rétegmagasság nem működik az organikus támaszokkal." msgstr "A változó rétegmagasság nem működik az organikus támaszokkal."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "A törlőtorony filamentje nem lehet kevert filament."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Eltérő fúvókaátmérők és eltérő filamentátmérők mellett a törlőtorony nem biztos, hogy megfelelően működik. Ez nagyon kísérleti funkció, ezért körültekintően használd." msgstr "Eltérő fúvókaátmérők és eltérő filamentátmérők mellett a törlőtorony nem biztos, hogy megfelelően működik. Ez nagyon kísérleti funkció, ezért körültekintően használd."
@@ -12685,7 +12822,7 @@ msgstr "mm vagy %"
msgid "Other layers" msgid "Other layers"
msgstr "Többi réteg" msgstr "Többi réteg"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "A kezdőréteg utáni asztalhőmérséklet. A 0 azt jelenti, hogy a filament nem nyomtatható a SuperTack hűvös tálcára." msgstr "A kezdőréteg utáni asztalhőmérséklet. A 0 azt jelenti, hogy a filament nem nyomtatható a SuperTack hűvös tálcára."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14063,6 +14200,8 @@ msgstr "Rétegidő"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "A tárgyhűtő ventilátor azon rétegek esetében lesz engedélyezve, amelyek becsült ideje rövidebb ennél az értéknél. A ventilátor fordulatszáma a rétegnyomtatási időnek megfelelően skálázódik a minimális és maximális ventilátor fordulatszám között" msgstr "A tárgyhűtő ventilátor azon rétegek esetében lesz engedélyezve, amelyek becsült ideje rövidebb ennél az értéknél. A ventilátor fordulatszáma a rétegnyomtatási időnek megfelelően skálázódik a minimális és maximális ventilátor fordulatszám között"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "mp" msgstr "mp"
@@ -14370,6 +14509,62 @@ msgstr "Támaszanyag"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "A támaszanyagot általában a támaszok és azok érintkező felületeinek nyomtatására használják." msgstr "A támaszanyagot általában a támaszok és azok érintkező felületeinek nyomtatására használják."
# AI Translated
msgid "Is mixed filament"
msgstr "Kevert filament-e"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Megadja, hogy ez a filamenthely több fizikai filamentből álló kevert filament-e"
# AI Translated
msgid "Mixed filament components"
msgstr "Kevert filament összetevői"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Az összetevő filamentek vesszővel elválasztott, 1-től induló indexei, pl. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Kevert filament alréteg-arányai"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Vesszővel elválasztott arányértékek, amelyek összege 1.0, pl. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Kevert filament színátmenete"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Bekapcsolja a Z irányú színátmenet módot a kevert filament alrétegeihez. Bekapcsolva az alrétegek arányai lineárisan változnak a rétegek mentén."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Kevert filament színátmenetének tartománya"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Az első összetevő kezdő és záró aránya színátmenet módban. Vesszővel elválasztott számpár, pl. a \"0.10,0.90\" 10%-tól 90%-ig tartót jelent."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Kevert filament színátmenet-görbéje"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Opcionális, Photoshop stílusú egyéni görbe, amely a Z irányú haladást az első összetevő arányához rendeli. Függőleges vonallal elválasztott vezérlőpontokként van kódolva, \"x,y\" (régi) vagy \"x,y,m_in,m_out\" formában, ha az érintő felülbírálására van szükség (üres érték vagy \"nan\" esetén a PCHIP alapértelmezés érvényes). x a [0,1] tartományban van; y a beállított aránytartományra van korlátozva, pl. \"0,0.15|0.5,0.50|1,0.85\". Ha üresen marad, helyette a lineáris gradient_range kerül felhasználásra."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Kevert filament színátmenete tárgyanként"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Ha a színátmenet mód be van kapcsolva, a színátmenet az összeállítás minden tárgyára külön-külön érvényesül, ahelyett hogy az egész összeállítást egyetlen Z tartományként kezelné."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament nyomtatható" msgstr "Filament nyomtatható"
@@ -15633,6 +15828,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Az Y tengely megengedett maximális kimeneti ereje" msgstr "Az Y tengely megengedett maximális kimeneti ereje"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15643,6 +15839,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Az Y tengely gépasztaltömeg-terhelése" msgstr "Az Y tengely gépasztaltömeg-terhelése"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15957,7 +16154,7 @@ msgid "Reduce infill retraction"
msgstr "Csökkentett visszahúzás kitöltésnél" msgstr "Csökkentett visszahúzás kitöltésnél"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Nem történik visszahúzás, amikor a fej csak kitöltés felett halad el, mert az itt történő szivárgás egyébként sem látható. Ez az opció lerövidítheti a nyomtatási időt a visszahúzások csökkentésével komplex modelleknél, de egyúttal lassabbá teszi a szeletelést és a G-kód generálást. Vedd figyelembe, hogy a Z-emelés sem történik meg azokon a területeken, ahol a visszahúzás ki van hagyva." msgstr "Nem történik visszahúzás, amikor a fej csak kitöltés felett halad el, mert az itt történő szivárgás egyébként sem látható. Ez az opció lerövidítheti a nyomtatási időt a visszahúzások csökkentésével komplex modelleknél, de egyúttal lassabbá teszi a szeletelést és a G-kód generálást. Vedd figyelembe, hogy a Z-emelés sem történik meg azokon a területeken, ahol a visszahúzás ki van hagyva."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16131,7 +16328,7 @@ msgstr "Visszahúzás mértéke törlés után"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"A törlés utáni gyors visszahúzás hossza a visszahúzási hosszhoz viszonyítva.\n" "A törlés utáni gyors visszahúzás hossza a visszahúzási hosszhoz viszonyítva.\n"
@@ -16178,7 +16375,7 @@ msgstr "Amikor a visszahúzás eszközváltás előtt aktiválódik, a filament
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z-emelés magassága" msgstr "Z-emelés magassága"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Visszahúzáskor a fúvóka egy kicsit megemelkedik, hogy a fúvóka és a nyomtatott tárgy között rés keletkezzen. Ez megakadályozza, hogy a fúvóka nagyobb mozgás közben a tárgynak ütközzön. A Z tengely emelésekor használt körkörös mozgás megelőzheti a szálazást." msgstr "Visszahúzáskor a fúvóka egy kicsit megemelkedik, hogy a fúvóka és a nyomtatott tárgy között rés keletkezzen. Ez megakadályozza, hogy a fúvóka nagyobb mozgás közben a tárgynak ütközzön. A Z tengely emelésekor használt körkörös mozgás megelőzheti a szálazást."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17233,6 +17430,14 @@ msgstr ""
"\n" "\n"
"Ha az alábbi \"visszahúzási mennyiség törlés előtt\" beállításban értéket adsz meg, akkor az esetleges többletvisszahúzás a törlés előtt történik meg, különben utána." "Ha az alábbi \"visszahúzási mennyiség törlés előtt\" beállításban értéket adsz meg, akkor az esetleges többletvisszahúzás a törlés előtt történik meg, különben utána."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Kevert színű alréteg"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Bekapcsolja a kevert színű alrétegekre bontást. Bekapcsolva a kevert színű filamentet tartalmazó rétegek alrétegekre lesznek bontva a színkeverési hatás eléréséhez."
# AI Translated # AI Translated
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "A törlőtorony a fúvókán lévő maradék eltávolítására és a fúvóka belsejében lévő nyomás stabilizálására szolgál, hogy elkerülhetők legyenek a megjelenésbeli hibák az objektumok nyomtatásakor." msgstr "A törlőtorony a fúvókán lévő maradék eltávolítására és a fúvóka belsejében lévő nyomás stabilizálására szolgál, hogy elkerülhetők legyenek a megjelenésbeli hibák az objektumok nyomtatásakor."
@@ -18306,6 +18511,10 @@ msgstr "A modellfájl hálósítása sikertelen volt, vagy nincs érvényes alak
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "A megadott fájl nem olvasható be, mert üres" msgstr "A megadott fájl nem olvasható be, mert üres"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "A fájlformátum nem kompatibilis, ezért nem értelmezhető."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Ismeretlen fájlformátum. A bemeneti fájlnak .stl, .obj vagy .amf(.xml) kiterjesztésűnek kell lennie." msgstr "Ismeretlen fájlformátum. A bemeneti fájlnak .stl, .obj vagy .amf(.xml) kiterjesztésűnek kell lennie."
@@ -19796,19 +20005,19 @@ msgstr "Csak azok a nyomtatók jelennek meg, amelyeknél változtak a nyomtató-
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Csak azok a filamentnevek jelennek meg, ahol változtak a filamentbeállítások." msgstr "Csak azok a filamentnevek jelennek meg, ahol változtak a filamentbeállítások."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Csak azok a nyomtatónevek jelennek meg, amelyekhez tartoznak felhasználói beállítások. A kiválasztott beállítások ZIP fájlként kerülnek exportálásra." msgstr "Csak azok a nyomtatónevek jelennek meg, amelyekhez tartoznak felhasználói beállítások. A kiválasztott beállítások ZIP fájlként kerülnek exportálásra."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Csak azok a filamentnevek jelennek meg, amelyekhez tartoznak felhasználói filamentbeállítások,\n" "Csak azok a filamentnevek jelennek meg, amelyekhez tartoznak felhasználói filamentbeállítások,\n"
"és a kiválasztott filamentnevekhez tartozó összes felhasználói filamentbeállítás ZIP-fájlként lesz exportálva." "és a kiválasztott filamentnevekhez tartozó összes felhasználói filamentbeállítás ZIP-fájlként lesz exportálva."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Csak azok a nyomtatónevek jelennek meg, amelyekhez módosított folyamatbeállítások tartoznak,\n" "Csak azok a nyomtatónevek jelennek meg, amelyekhez módosított folyamatbeállítások tartoznak,\n"
"és a kiválasztott nyomtatónevekhez tartozó összes felhasználói folyamatbeállítás ZIP-fájlként lesz exportálva." "és a kiválasztott nyomtatónevekhez tartozó összes felhasználói folyamatbeállítás ZIP-fájlként lesz exportálva."
@@ -20054,7 +20263,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Információra van szükségünk a probléma forrásának feltárásához. A részletes útmutatót a wiki oldalon találod." msgstr "Információra van szükségünk a probléma forrásának feltárásához. A részletes útmutatót a wiki oldalon találod."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "A Csomagolás gomb egy zip fájlba gyűjti a projektfájlt és az aktuális munkamenet naplóit." msgstr "A Csomagolás gomb egy zip fájlba gyűjti a projektfájlt és az aktuális munkamenet naplóit."
# AI Translated # AI Translated
@@ -20110,7 +20319,7 @@ msgid "Stored logs"
msgstr "Tárolt naplók" msgstr "Tárolt naplók"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Az összes tárolt naplót egy zip fájlba csomagolja." msgstr "Az összes tárolt naplót egy zip fájlba csomagolja."
# AI Translated # AI Translated
@@ -20198,7 +20407,7 @@ msgid "Authorizing..."
msgstr "Engedélyezés..." msgstr "Engedélyezés..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Hiba. Nem sikerült API-tokent szerezni az engedélyezéshez" msgstr "Hiba. Nem sikerült API-tokent szerezni az engedélyezéshez"
# AI Translated # AI Translated
@@ -20654,8 +20863,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Intelligens filament-hozzárendelés bekapcsolása: egy filament több fúvókához rendelése a megtakarítás maximalizálásához" msgstr "Intelligens filament-hozzárendelés bekapcsolása: egy filament több fúvókához rendelése a megtakarítás maximalizálásához"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Filamentmegtakarítás" msgstr "Fájl mentése"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Ne emlékeztessen újra" msgstr "Ne emlékeztessen újra"
@@ -20979,6 +21188,15 @@ msgstr "Ez a művelet nem vonható vissza. Folytatod?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Objektumok kihagyása." msgstr "Objektumok kihagyása."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Filament kiválasztása" msgstr "Filament kiválasztása"
@@ -21058,6 +21276,9 @@ msgstr "Újraindítás most"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "EGYÁLTALÁN NINCS TÖMÖRÍTÉS" msgstr "EGYÁLTALÁN NINCS TÖMÖRÍTÉS"
msgid "s"
msgstr "mp"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Volumetrikus sebesség" msgstr "Volumetrikus sebesség"
@@ -21709,6 +21930,39 @@ msgstr ""
"Kunkorodás elkerülése\n" "Kunkorodás elkerülése\n"
"Tudtad, hogy a kunkorodásra hajlamos anyagok (például ABS) nyomtatásakor az asztal hőmérsékletének növelése csökkentheti a kunkorodás valószínűségét?" "Tudtad, hogy a kunkorodásra hajlamos anyagok (például ABS) nyomtatásakor az asztal hőmérsékletének növelése csökkentheti a kunkorodás valószínűségét?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "A natív Wayland élőképhez a GStreamer GTK videonyelő szükséges. Telepítsd a gtksink beépülő modult a GStreamerhez, majd indítsd újra az OrcaSlicert."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Nem sikerült inicializálni a natív Wayland GStreamer videonyelőt. Ellenőrizd a GStreamer GTK bővítmény telepítését."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Ehhez a művelethez Windows Media Player szükséges. Szeretnéd engedélyezni a \"Windows Media Player\"-t az operációs rendszerben?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "A BambuSource nincs megfelelően regisztrálva médialejátszáshoz. Kattints az Igen gombra az újbóli regisztráláshoz. Kétszer kapsz majd megerősítési kérést."
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "A médialejátszáshoz szükséges BambuSource-összetevő hiányzik. Kérlek, telepítsd újra az OrcaSlicert, vagy kérj segítséget a közösségtől."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Ha egy másik telepítésből származó BambuSource van használatban, előfordulhat, hogy a videólejátszás nem működik megfelelően. Kattints az Igen gombra a javításhoz."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "A rendszerből hiányoznak a GStreamer H.264 kodekjei, amelyek szükségesek a videolejátszáshoz. (Próbáld telepíteni a gstreamer1.0-plugins-bad vagy a gstreamer1.0-libav csomagokat, majd indítsd újra az Orca Slicert.)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Filamentmegtakarítás"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@@ -2953,6 +2953,10 @@ msgstr "Modifica"
msgid "Merge with" msgid "Merge with"
msgstr "Unisci con" msgstr "Unisci con"
# AI Translated
msgid "Decompose Color"
msgstr "Scomponi colore"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Elimina questo filamento" msgstr "Elimina questo filamento"
@@ -3252,6 +3256,10 @@ msgstr "Assemblaggio"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Unisci parti in un oggetto" msgstr "Unisci parti in un oggetto"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "L'uso dell'altezza strato variabile insieme al sottostrato di colore misto può ridurre la qualità della miscelazione dei colori."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Aggiungi strati" msgstr "Aggiungi strati"
@@ -4805,7 +4813,7 @@ msgstr ""
"\n" "\n"
"Il valore verrà reimpostato a 0." "Il valore verrà reimpostato a 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Parete aggiuntiva alternativa non funziona bene quando \"Garantisci spessore verticale del guscio\" è impostato su Tutto." msgstr "Parete aggiuntiva alternativa non funziona bene quando \"Garantisci spessore verticale del guscio\" è impostato su Tutto."
msgid "" msgid ""
@@ -4851,7 +4859,7 @@ msgstr ""
"NO - Mantieni Altezza strato di supporto indipendente" "NO - Mantieni Altezza strato di supporto indipendente"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height deve essere inferiore a layer_height.\n" "seam_slope_start_height deve essere inferiore a layer_height.\n"
@@ -4859,7 +4867,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"La profondità di intersezione deve essere inferiore alla profondità della pelle.\n" "La profondità di intersezione deve essere inferiore alla profondità della pelle.\n"
@@ -4899,6 +4907,9 @@ msgstr ""
"Sì - Modifica queste impostazioni ed abilita la modalità spirale automaticamente\n" "Sì - Modifica queste impostazioni ed abilita la modalità spirale automaticamente\n"
"No - Annulla l'attivazione della modalità a spirale" "No - Annulla l'attivazione della modalità a spirale"
msgid "N/A"
msgstr "N/D"
msgid "Printing" msgid "Printing"
msgstr "Stampa" msgstr "Stampa"
@@ -5358,9 +5369,6 @@ msgstr "Schema non valido. Utilizzare N, N#K o un elenco separato da virgole con
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Formato non valido. Formato vettoriale previsto: \"%1%\"" msgstr "Formato non valido. Formato vettoriale previsto: \"%1%\""
msgid "N/A"
msgstr "N/D"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Agenti di sistema" msgstr "Agenti di sistema"
@@ -6319,16 +6327,22 @@ msgstr "Salva progetto con nome"
msgid "Save current project as" msgid "Save current project as"
msgstr "Salva progetto corrente con nome" msgstr "Salva progetto corrente con nome"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importa 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importa 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Carica modello" msgstr "Carica modello"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importa archivio Zip" msgstr "Importa archivio Zip"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Carica i modelli contenuti in un archivio zip" msgstr "Carica i modelli contenuti in un archivio zip"
msgid "Import Configs" msgid "Import Configs"
@@ -7851,6 +7865,10 @@ msgstr "Personalizza il piatto corrente"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "L'ugello %s non può stampare %s." msgstr "L'ugello %s non può stampare %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "La stampa di filamento a colore misto su una stampante a estrusore singolo richiede frequenti cambi di filamento e spurghi, il che può aumentare notevolmente gli scarti e il rischio di intasamento dell'ugello o dello scivolo di scarto."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Non è consigliato miscelare %1% con %2% nella stampa.\n" msgstr "Non è consigliato miscelare %1% con %2% nella stampa.\n"
@@ -7976,12 +7994,44 @@ msgstr "Sincronizza l'elenco filamenti dall'AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Imposta filamenti da usare" msgstr "Imposta filamenti da usare"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Aggiungi filamento misto"
# AI Translated
msgid "Mixed Filament"
msgstr "Filamento misto"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Rimuovi l'ultimo filamento misto"
# AI Translated
msgid "Add mixed filament"
msgstr "Aggiungi filamento misto"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Il filamento misto ha componenti non validi o incoerenti. Modificare nuovamente le voci interessate."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Cerca piatto, oggetto e parte." msgstr "Cerca piatto, oggetto e parte."
msgid "Pellets" msgid "Pellets"
msgstr "Granuli" msgstr "Granuli"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Il filamento misto ha riferimenti a componenti non validi"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Modifica / Elimina / Unisci"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Il filamento misto di destinazione utilizza questo filamento fisico come componente. L'unione rimuoverà questo filamento fisico e potrebbe invalidare il filamento misto. Continuare?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Al completamento dell'operazione, il progetto %s verrà chiuso e ne verrà creato uno nuovo." msgstr "Al completamento dell'operazione, il progetto %s verrà chiuso e ne verrà creato uno nuovo."
@@ -8119,8 +8169,14 @@ msgstr "Si prega di confermare che i G-code all'interno di questi profili sono s
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Profilo personalizzato" msgstr "Profilo personalizzato"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Il nome dei componenti all'interno del file STEP non è in formato UTF8!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Il nome dei componenti all'interno del file STEP non è in formato UTF-8!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "A causa di una codifica del testo non supportata, potrebbero apparire caratteri inutili!" msgstr "A causa di una codifica del testo non supportata, potrebbero apparire caratteri inutili!"
@@ -8141,10 +8197,10 @@ msgstr "Il volume dell'oggetto è zero"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"L'oggetto del file %s è troppo piccolo e può essere in metri o pollici.\n" "L'oggetto del file %s è troppo piccolo e può essere in metri o pollici.\n"
" Si desidera scalare in millimetri?" "Si desidera scalare in millimetri?"
msgid "Object too small" msgid "Object too small"
msgstr "Oggetto troppo piccolo" msgstr "Oggetto troppo piccolo"
@@ -8161,6 +8217,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Rilevato oggetto in più parti" msgstr "Rilevato oggetto in più parti"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Associazione delle trame ai filamenti"
# AI Translated
msgid "Texture Import Warning"
msgstr "Avviso di importazione trama"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Caricare questi file come un singolo oggetto con più parti?\n" msgstr "Caricare questi file come un singolo oggetto con più parti?\n"
@@ -8371,6 +8435,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Sincronizza ora" msgstr "Sincronizza ora"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Importazione della trama non riuscita. Il modello sembra contenere dati di trama, ma non è stato possibile completare il processo di importazione. Il modello verrà importato solo come geometria."
# AI Translated
msgid "Applying texture colors..."
msgstr "Applicazione dei colori della trama..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Aggiornamento della vista 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "Colori della trama applicati."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "È possibile conservare i profili modificati per il nuovo progetto o scartarli" msgstr "È possibile conservare i profili modificati per il nuovo progetto o scartarli"
@@ -8502,6 +8582,17 @@ msgstr "Salva file elaborato con nome:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Il file %s è stato inviato alla memoria della stampante e può essere visualizzato da lì." msgstr "Il file %s è stato inviato alla memoria della stampante e può essere visualizzato da lì."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Pubblica"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Il tipo di ugello non è impostato. Impostare l'ugello e riprovare." msgstr "Il tipo di ugello non è impostato. Impostare l'ugello e riprovare."
@@ -9654,6 +9745,10 @@ msgstr "Vaso a spirale"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Sequenza filamenti primo strato" msgstr "Sequenza filamenti primo strato"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "L'elenco dei filamenti contiene filamenti misti. La sequenza di filamenti personalizzata non avrà effetto."
msgid "By Layer" msgid "By Layer"
msgstr "Per strato" msgstr "Per strato"
@@ -9682,9 +9777,6 @@ msgstr "Vai alla pagina web di pubblicazione del modello"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Nota: la preparazione può richiedere alcuni minuti. Si prega di avere pazienza." msgstr "Nota: la preparazione può richiedere alcuni minuti. Si prega di avere pazienza."
msgid "Publish"
msgstr "Pubblica"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "La pubblicazione è stata annullata" msgstr "La pubblicazione è stata annullata"
@@ -9700,6 +9792,64 @@ msgstr "Caricamento dati"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Vai alla pagina web" msgstr "Vai alla pagina web"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Salva %s con nome" msgstr "Salva %s con nome"
@@ -11044,12 +11194,12 @@ msgid "No modifications need to be copied."
msgstr "Non è necessario copiare alcuna modifica." msgstr "Non è necessario copiare alcuna modifica."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Copia parametri" msgstr "Copia parametri"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Modifica i parametri di %s" msgstr "Modifica i parametri di %s"
# AI Translated # AI Translated
@@ -11571,27 +11721,6 @@ msgstr "Volumi di spurgo per cambio filamento"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Scegliere il colore del filamento" msgstr "Scegliere il colore del filamento"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "La funzione di visualizzazione in tempo reale nativa di Wayland richiede il ricevitore video GTK di GStreamer. Installare il modulo gtksink per GStreamer e riavviare OrcaSlicer."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Impossibile inizializzare il ricevitore video nativo di Wayland GStreamer. Verificare l'installazione del modulo GTK di GStreamer."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Per questa operazione è necessario Windows Media Player! Desideri abilitare 'Windows Media Player' sul il tuo sistema operativo?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource non è stato registrato correttamente per la riproduzione multimediale! Fare clic su Sì per effettuare nuovamente la registrazione. Sarai promosso due volte"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Componente BambuSource mancante per la riproduzione multimediale! Reinstallare OrcaSlicer o cercare aiuto nella comunità."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "È in uso una versione di BambuSource da un'installazione diversa. La riproduzione video potrebbe non funzionare correttamente! Fare clic su Sì per risolvere il problema."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Nel tuo sistema mancano i codec H.264 per GStreamer, necessari per riprodurre i video. (Provare a installare i pacchetti gstreamer1.0-plugins-bad o gstreamer1.0-libav e riavviare OrcaSlicer?)"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Il fornitore di servizi cloud non è disponibile. Riavviare OrcaSlicer e riprovare." msgstr "Il fornitore di servizi cloud non è disponibile. Riavviare OrcaSlicer e riprovare."
@@ -12303,6 +12432,10 @@ msgstr "Se desideri comunque stampare, puoi abilitare l'opzione in Preferenze /
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Nessuna estrusione con le impostazioni attuali." msgstr "Nessuna estrusione con le impostazioni attuali."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "È in uso un filamento misto con gradiente, ma 'Sottostrato di colore misto' è disattivato. Il gradiente non verrà stampato."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "La modalità fluida del timelapse non è supportata quando è abilitata la sequenza \"Per oggetto\"." msgstr "La modalità fluida del timelapse non è supportata quando è abilitata la sequenza \"Per oggetto\"."
@@ -12339,6 +12472,10 @@ msgstr "È possibile ridurre le dimensioni del modello o modificare le impostazi
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Altezza strato adattiva non è compatibile con i Supporti organici." msgstr "Altezza strato adattiva non è compatibile con i Supporti organici."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Il filamento della torre di spurgo non può essere un filamento misto."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Ugelli e filamenti di diverso diametro potrebbero non funzionare correttamente quando è abilitata la torre di spurgo. Questa funzione è sperimentale, quindi procedere con cautela." msgstr "Ugelli e filamenti di diverso diametro potrebbero non funzionare correttamente quando è abilitata la torre di spurgo. Questa funzione è sperimentale, quindi procedere con cautela."
@@ -12705,8 +12842,8 @@ msgstr "mm o %"
msgid "Other layers" msgid "Other layers"
msgstr "Altri strati" msgstr "Altri strati"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Temperatura del piatto per gli strati diversi dal primo. Un valore di 0 significa che il filamento non supporta la stampa su Cool Plate SuperTack." msgstr "Indica la temperatura del piatto per tutti gli strati eccetto il primo. Un valore di 0 significa che il filamento non supporta la stampa su Cool Plate SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Indica la temperatura del piatto per tutti gli strati eccetto il primo. Un valore pari a 0 indica che il filamento non supporta la stampa su Piatto a bassa temperatura." msgstr "Indica la temperatura del piatto per tutti gli strati eccetto il primo. Un valore pari a 0 indica che il filamento non supporta la stampa su Piatto a bassa temperatura."
@@ -14082,6 +14219,8 @@ msgstr "Durata strato"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "La ventola di raffreddamento verrà attivata per gli strati in cui il tempo stimato è inferiore a questo valore. La velocità della ventola varierà tra la velocità minima e massima in base alla durata stimata di stampa dello strato." msgstr "La ventola di raffreddamento verrà attivata per gli strati in cui il tempo stimato è inferiore a questo valore. La velocità della ventola varierà tra la velocità minima e massima in base alla durata stimata di stampa dello strato."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14388,6 +14527,62 @@ msgstr "Materiale di supporto"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Il materiale di supporto viene comunemente utilizzato per stampare supporti e interfacce di supporto." msgstr "Il materiale di supporto viene comunemente utilizzato per stampare supporti e interfacce di supporto."
# AI Translated
msgid "Is mixed filament"
msgstr "È filamento misto"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Indica se questo slot di filamento è un filamento misto composto da più filamenti fisici"
# AI Translated
msgid "Mixed filament components"
msgstr "Componenti del filamento misto"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Indici (a partire da 1) dei filamenti componenti, separati da virgole; es. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Proporzioni dei sottostrati del filamento misto"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Valori di proporzione separati da virgole la cui somma sia 1.0; es. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Gradiente del filamento misto"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Attiva la modalità gradiente in direzione Z per i sottostrati del filamento misto. Se attivata, le proporzioni dei sottostrati variano linearmente tra gli strati."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Intervallo del gradiente del filamento misto"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Proporzioni iniziale e finale del primo componente in modalità gradiente. Coppia separata da virgola; es. \"0.10,0.90\" significa dal 10% al 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Curva del gradiente del filamento misto"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Curva personalizzata opzionale, in stile Photoshop, che mappa l'avanzamento in Z sulla proporzione del primo componente. Codificata come punti di controllo separati da barre verticali, nel formato \"x,y\" (legacy) oppure \"x,y,m_in,m_out\" quando è necessario forzare la tangente (un valore vuoto o \"nan\" usa il valore PCHIP predefinito). x è compreso in [0,1]; y viene limitato all'intervallo di proporzioni configurato; es. \"0,0.15|0.5,0.50|1,0.85\". Se vuoto, viene usato il gradient_range lineare."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Gradiente per parte del filamento misto"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Quando la modalità gradiente è attiva, applica il gradiente a ciascuna parte di un assemblaggio in modo indipendente anziché trattare l'intero assemblaggio come un unico intervallo Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filamento stampabile" msgstr "Filamento stampabile"
@@ -15655,6 +15850,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "La forza di uscita massima consentita dell'asse Y" msgstr "La forza di uscita massima consentita dell'asse Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15665,6 +15861,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Il carico di massa del piano della macchina sull'asse Y" msgstr "Il carico di massa del piano della macchina sull'asse Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15976,7 +16173,7 @@ msgid "Reduce infill retraction"
msgstr "Evita retrazione nel riempimento" msgstr "Evita retrazione nel riempimento"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Non ritrarre quando gli spostamenti si trovano interamente in un'area di riempimento. Ciò significa che il trasudo del materiale non è visibile. Questo può ridurre i tempi di retrazione per i modelli complessi e far risparmiare tempo di stampa, ma rende più lente l'elaborazione e la generazione del G-code. Nota che anche il sollevamento Z non viene eseguito nelle aree in cui la retrazione viene saltata." msgstr "Non ritrarre quando gli spostamenti si trovano interamente in un'area di riempimento. Ciò significa che il trasudo del materiale non è visibile. Questo può ridurre i tempi di retrazione per i modelli complessi e far risparmiare tempo di stampa, ma rende più lente l'elaborazione e la generazione del G-code. Nota che anche il sollevamento Z non viene eseguito nelle aree in cui la retrazione viene saltata."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16150,7 +16347,7 @@ msgstr "Quantità di retrazione dopo la pulizia"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"La lunghezza della retrazione rapida dopo la pulizia, relativa alla lunghezza di retrazione.\n" "La lunghezza della retrazione rapida dopo la pulizia, relativa alla lunghezza di retrazione.\n"
@@ -16197,7 +16394,7 @@ msgstr "Quando la retrazione viene attivata prima di un cambio testina, il filam
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Altezza sollevamento Z" msgstr "Altezza sollevamento Z"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Ogni volta che si verifica una retrazione, l'ugello viene sollevato leggermente per creare spazio tra ugello e stampa. Ciò impedisce all'ugello di colpire la stampa negli spostamenti. L'uso di linee a spirale per il sollevamento sull'asse Z può evitare gli sfilacciamenti sulla stampa." msgstr "Ogni volta che si verifica una retrazione, l'ugello viene sollevato leggermente per creare spazio tra ugello e stampa. Ciò impedisce all'ugello di colpire la stampa negli spostamenti. L'uso di linee a spirale per il sollevamento sull'asse Z può evitare gli sfilacciamenti sulla stampa."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17258,6 +17455,14 @@ msgstr ""
"\n" "\n"
"Impostando un valore di quantità di retrazione prima dell'impostazione di spurgo di seguito, verra eseguita qualsiasi retrazione in eccesso prima dello spurgo. Altrimenti verrà eseguita dopo." "Impostando un valore di quantità di retrazione prima dell'impostazione di spurgo di seguito, verra eseguita qualsiasi retrazione in eccesso prima dello spurgo. Altrimenti verrà eseguita dopo."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Sottostrato di colore misto"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Attiva la suddivisione in sottostrati di colore misto. Se attivata, gli strati che contengono filamenti a colore misto vengono suddivisi in sottostrati per ottenere effetti di miscelazione dei colori."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "La torre di spurgo può essere utilizzata per pulire i residui presenti sull'ugello e stabilizzare la pressione della camera all'interno dell'ugello, al fine di evitare difetti estetici durante la stampa." msgstr "La torre di spurgo può essere utilizzata per pulire i residui presenti sull'ugello e stabilizzare la pressione della camera all'interno dell'ugello, al fine di evitare difetti estetici durante la stampa."
@@ -18329,6 +18534,10 @@ msgstr "La generazione della mesh del file del modello è fallita o la forma non
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Impossibile leggere il file fornito perché è vuoto" msgstr "Impossibile leggere il file fornito perché è vuoto"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Il formato del file non è compatibile e non può essere interpretato."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Formato file sconosciuto: il file di input deve avere un'estensione .stl, .obj o .amf(.xml)." msgstr "Formato file sconosciuto: il file di input deve avere un'estensione .stl, .obj o .amf(.xml)."
@@ -19813,21 +20022,21 @@ msgstr "Vengono visualizzate solo le stampanti con modifiche ai profili di stamp
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Nomi dei filamenti con modifiche ai profili di filamento." msgstr "Nomi dei filamenti con modifiche ai profili di filamento."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "" msgstr ""
"Nomi delle stampanti con profili creati dell'utente.\n" "Nomi delle stampanti con profili creati dell'utente.\n"
"Tutti i profili selezionati saranno esportati come file zip." "Tutti i profili selezionati saranno esportati come file zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Nomi dei filamenti con profili creati dell'utente.\n" "Nomi dei filamenti con profili creati dell'utente.\n"
"Tutti i profili selezionati saranno esportati come file zip." "Tutti i profili selezionati saranno esportati come file zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Nomi delle stampanti con profili di processo modificati.\n" "Nomi delle stampanti con profili di processo modificati.\n"
"Tutti i profili selezionati saranno esportati come file zip." "Tutti i profili selezionati saranno esportati come file zip."
@@ -20072,7 +20281,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Abbiamo bisogno di informazioni per diagnosticare l'origine del problema. Consulta la pagina wiki per una guida dettagliata." msgstr "Abbiamo bisogno di informazioni per diagnosticare l'origine del problema. Consulta la pagina wiki per una guida dettagliata."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Il pulsante Comprimi raccoglie il file di progetto e i log della sessione corrente in un file zip." msgstr "Il pulsante Comprimi raccoglie il file di progetto e i log della sessione corrente in un file zip."
# AI Translated # AI Translated
@@ -20128,7 +20337,7 @@ msgid "Stored logs"
msgstr "Log memorizzati" msgstr "Log memorizzati"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Comprime tutti i log memorizzati in un file zip." msgstr "Comprime tutti i log memorizzati in un file zip."
# AI Translated # AI Translated
@@ -20216,7 +20425,7 @@ msgid "Authorizing..."
msgstr "Autorizzazione in corso..." msgstr "Autorizzazione in corso..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Errore. Impossibile ottenere il token API per l'autorizzazione" msgstr "Errore. Impossibile ottenere il token API per l'autorizzazione"
# AI Translated # AI Translated
@@ -20672,8 +20881,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Abilita l'assegnazione intelligente del filamento: assegna un filamento a più ugelli per massimizzare il risparmio" msgstr "Abilita l'assegnazione intelligente del filamento: assegna un filamento a più ugelli per massimizzare il risparmio"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Risparmio filamento" msgstr "Salvataggio file"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Non ricordarmelo più" msgstr "Non ricordarmelo più"
@@ -21003,6 +21212,15 @@ msgstr "Questa azione non può essere annullata. Continuare?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Salto degli oggetti." msgstr "Salto degli oggetti."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Seleziona filamento" msgstr "Seleziona filamento"
@@ -21082,6 +21300,9 @@ msgstr "Riavvia ora"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "NESSUNA SPINTA" msgstr "NESSUNA SPINTA"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Velocità volumetrica" msgstr "Velocità volumetrica"
@@ -21733,6 +21954,39 @@ msgstr ""
"Evita le deformazioni\n" "Evita le deformazioni\n"
"Sapevi che quando si stampano materiali soggetti a deformazioni come l'ABS, aumentare in modo appropriato la temperatura del piano riscaldato può ridurre la probabilità di deformazione?" "Sapevi che quando si stampano materiali soggetti a deformazioni come l'ABS, aumentare in modo appropriato la temperatura del piano riscaldato può ridurre la probabilità di deformazione?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "La funzione di visualizzazione in tempo reale nativa di Wayland richiede il ricevitore video GTK di GStreamer. Installare il modulo gtksink per GStreamer e riavviare OrcaSlicer."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Impossibile inizializzare il ricevitore video nativo di Wayland GStreamer. Verificare l'installazione del modulo GTK di GStreamer."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Per questa operazione è necessario Windows Media Player! Desideri abilitare 'Windows Media Player' sul il tuo sistema operativo?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource non è stato registrato correttamente per la riproduzione multimediale! Fare clic su Sì per effettuare nuovamente la registrazione. Sarai promosso due volte"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Componente BambuSource mancante per la riproduzione multimediale! Reinstallare OrcaSlicer o cercare aiuto nella comunità."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "È in uso una versione di BambuSource da un'installazione diversa. La riproduzione video potrebbe non funzionare correttamente! Fare clic su Sì per risolvere il problema."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Nel tuo sistema mancano i codec H.264 per GStreamer, necessari per riprodurre i video. (Provare a installare i pacchetti gstreamer1.0-plugins-bad o gstreamer1.0-libav e riavviare OrcaSlicer?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Risparmio filamento"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@@ -2969,6 +2969,10 @@ msgstr "編集"
msgid "Merge with" msgid "Merge with"
msgstr "結合" msgstr "結合"
# AI Translated
msgid "Decompose Color"
msgstr "色を分解"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "このフィラメントを削除" msgstr "このフィラメントを削除"
@@ -3266,6 +3270,10 @@ msgstr "アセンブリ"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "パーツをオブジェクトに結合" msgstr "パーツをオブジェクトに結合"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "可変積層ピッチと混色サブレイヤーを併用すると、混色の品質が低下する場合があります。"
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "積層を追加" msgstr "積層を追加"
@@ -4818,7 +4826,7 @@ msgstr ""
"\n" "\n"
"値は0にリセットされます。" "値は0にリセットされます。"
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "垂直シェル厚さを「すべて」に設定すると、交互追加壁が適切に機能しません。" msgstr "垂直シェル厚さを「すべて」に設定すると、交互追加壁が適切に機能しません。"
msgid "" msgid ""
@@ -4864,7 +4872,7 @@ msgstr ""
"いいえ - 「独立サポート積層ピッチ」を有効にする" "いいえ - 「独立サポート積層ピッチ」を有効にする"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_heightはlayer_heightより小さくする必要があります。\n" "seam_slope_start_heightはlayer_heightより小さくする必要があります。\n"
@@ -4872,7 +4880,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"ロック深さはスキン深さより小さくする必要があります。\n" "ロック深さはスキン深さより小さくする必要があります。\n"
@@ -4912,6 +4920,10 @@ msgstr ""
"はい - 変更して、スパイラルモードを有効にします\n" "はい - 変更して、スパイラルモードを有効にします\n"
"いいえ - 変更せず、スパイラルモードを有効しません" "いいえ - 変更せず、スパイラルモードを有効しません"
# AI Translated
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "造形中" msgstr "造形中"
@@ -5370,10 +5382,6 @@ msgstr "無効なパターンです。N、N#K、またはオプション#K付き
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "無効なフォーマット、%1%であるはずです。" msgstr "無効なフォーマット、%1%であるはずです。"
# AI Translated
msgid "N/A"
msgstr "N/A"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "システムエージェント" msgstr "システムエージェント"
@@ -6328,16 +6336,22 @@ msgstr "プロジェクトを名前を付けて保存"
msgid "Save current project as" msgid "Save current project as"
msgstr "プロジェクトを名前を付けて保存" msgstr "プロジェクトを名前を付けて保存"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "3MF/STL/STEP/SVG/OBJ/AMFをインポート" msgstr "3MF/STL/STEP/SVG/OBJ/AMFをインポート"
msgid "Load a model" msgid "Load a model"
msgstr "モデルを読み込む" msgstr "モデルを読み込む"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "ZIPアーカイブをインポート" msgstr "ZIPアーカイブをインポート"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "ZIPアーカイブ内のモデルをロード" msgstr "ZIPアーカイブ内のモデルをロード"
msgid "Import Configs" msgid "Import Configs"
@@ -7859,6 +7873,10 @@ msgstr "現在のプレートをカスタマイズ"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%sズルは%sを印刷できません。" msgstr "%sズルは%sを印刷できません。"
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "単一押出機のプリンターで混色フィラメントを印刷すると、フィラメント交換とフラッシュが頻繁に発生し、廃材やノズル/廃棄シュートの詰まりのリスクが大幅に増加する可能性があります。"
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "%1%と%2%を混合して印刷することは推奨されません。\n" msgstr "%1%と%2%を混合して印刷することは推奨されません。\n"
@@ -7984,12 +8002,44 @@ msgstr "AMSと素材を同期"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "フィラメントを選択" msgstr "フィラメントを選択"
# AI Translated
msgid "Add Mixed Filament"
msgstr "混合フィラメントを追加"
# AI Translated
msgid "Mixed Filament"
msgstr "混合フィラメント"
# AI Translated
msgid "Remove last mixed filament"
msgstr "最後の混合フィラメントを削除"
# AI Translated
msgid "Add mixed filament"
msgstr "混合フィラメントを追加"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "混合フィラメントのコンポーネントが無効か一致していません。該当する項目を編集し直してください。"
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "プレート、オブジェクト、パーツを検索。" msgstr "プレート、オブジェクト、パーツを検索。"
msgid "Pellets" msgid "Pellets"
msgstr "ペレット" msgstr "ペレット"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "混合フィラメントのコンポーネント参照が壊れています"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "編集 / 削除 / 結合"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "対象の混合フィラメントはこの物理フィラメントをコンポーネントとして使用しています。結合するとこの物理フィラメントは削除され、混合フィラメントが無効になる可能性があります。続行しますか?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "操作完了後、%sプロジェクトが閉じられ、新しいプロジェクトが作成されます。" msgstr "操作完了後、%sプロジェクトが閉じられ、新しいプロジェクトが作成されます。"
@@ -8133,8 +8183,14 @@ msgstr "これらのプリセット内のG-codeがマシンに損傷を与えな
msgid "Customized Preset" msgid "Customized Preset"
msgstr "カスタマイズされたプリセット" msgstr "カスタマイズされたプリセット"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "ファイルのエンコーディング方式はUTF8形式ではありません" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "ファイルのエンコーディング方式はUTF-8形式ではありません"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "文字化けがあるようです、ご確認ください" msgstr "文字化けがあるようです、ご確認ください"
@@ -8155,7 +8211,7 @@ msgstr "オブジェクトの体積が0です"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"ファイル %s 中のオブジェクトが小さいすぎます、ファイルの単位をご確認ください。\n" "ファイル %s 中のオブジェクトが小さいすぎます、ファイルの単位をご確認ください。\n"
"mm単位に変換しますか" "mm単位に変換しますか"
@@ -8176,6 +8232,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "マルチパーツ検出" msgstr "マルチパーツ検出"
# AI Translated
msgid "Matching textures to filaments"
msgstr "テクスチャをフィラメントに対応付けています"
# AI Translated
msgid "Texture Import Warning"
msgstr "テクスチャインポートの警告"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "これらのファイルを一つのオブジェクトとしてロードしますか?\n" msgstr "これらのファイルを一つのオブジェクトとしてロードしますか?\n"
@@ -8389,6 +8453,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "今すぐ同期" msgstr "今すぐ同期"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "テクスチャのインポートに失敗しました。モデルにテクスチャデータが含まれているようですが、インポート処理を完了できませんでした。モデルはジオメトリのみとしてインポートされます。"
# AI Translated
msgid "Applying texture colors..."
msgstr "テクスチャの色を適用しています..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3Dビューを更新しています..."
# AI Translated
msgid "Texture colors applied."
msgstr "テクスチャの色を適用しました。"
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "変更したプリセットをプロジェクト内に保存するか、破棄もできます" msgstr "変更したプリセットをプロジェクト内に保存するか、破棄もできます"
@@ -8521,6 +8601,17 @@ msgstr "名前を付けて保存:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "%sを送信しました、プリンターにて確認できます" msgstr "%sを送信しました、プリンターにて確認できます"
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "公開する"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "ノズルタイプが設定されていません。ノズルを設定して再試行してください。" msgstr "ノズルタイプが設定されていません。ノズルを設定して再試行してください。"
@@ -9676,6 +9767,10 @@ msgstr "スパイラル"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "初期レイヤーフィラメント順序" msgstr "初期レイヤーフィラメント順序"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "フィラメントリストに混合フィラメントが含まれています。カスタムフィラメント順序は適用されません。"
msgid "By Layer" msgid "By Layer"
msgstr "レイヤー別" msgstr "レイヤー別"
@@ -9704,9 +9799,6 @@ msgstr "モデル公開ページに移動"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "注意: 準備するには数分かかる場合があります、暫くお待ち下さい。" msgstr "注意: 準備するには数分かかる場合があります、暫くお待ち下さい。"
msgid "Publish"
msgstr "公開する"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "公開は取り消しました" msgstr "公開は取り消しました"
@@ -9722,6 +9814,64 @@ msgstr "データをアップロード中"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "ウェブページに移動" msgstr "ウェブページに移動"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "%sを名前つけて保存" msgstr "%sを名前つけて保存"
@@ -10617,7 +10767,7 @@ msgid "Junction Deviation"
msgstr "接合偏差" msgstr "接合偏差"
msgid "Jerk(XY)" msgid "Jerk(XY)"
msgstr "ジャーク(XY)" msgstr "Jerk(XY)"
msgid "Raft" msgid "Raft"
msgstr "ラフト" msgstr "ラフト"
@@ -10914,7 +11064,7 @@ msgid "Acceleration limitation"
msgstr "加速制限" msgstr "加速制限"
msgid "Jerk limitation" msgid "Jerk limitation"
msgstr "振動特性" msgstr "Jerk制限"
msgid "Single extruder multi-material setup" msgid "Single extruder multi-material setup"
msgstr "シングルエクストルーダー マルチマテリアル設定" msgstr "シングルエクストルーダー マルチマテリアル設定"
@@ -11068,12 +11218,12 @@ msgid "No modifications need to be copied."
msgstr "コピーが必要な変更はありません。" msgstr "コピーが必要な変更はありません。"
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "パラメータをコピー" msgstr "パラメータをコピー"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "%sのパラメータを変更" msgstr "%sのパラメータを変更"
# AI Translated # AI Translated
@@ -11591,33 +11741,6 @@ msgstr "フィラメントを入替える為のフラッシュ量"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "フィラメントの色を選択してください" msgstr "フィラメントの色を選択してください"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "ネイティブWaylandのライブビューにはGStreamer GTKビデオシンクが必要です。GStreamer用のgtksinkプラグインをインストールし、OrcaSlicerを再起動してください。"
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "ネイティブWaylandのGStreamerビデオシンクの初期化に失敗しました。GStreamer GTKプラグインのインストール状況をご確認ください。"
# AI Translated
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "このタスクにはWindows Media Playerが必要ですお使いのOSで「Windows Media Player」を有効にしますか"
# AI Translated
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "メディア再生用のBambuSourceが正しく登録されていません「はい」を押して再登録してください。確認が2回表示されます"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "メディア再生用のBambuSourceコンポーネントが見つかりませんOrcaSlicerを再インストールするかコミュニティに助けを求めてください。"
# AI Translated
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "別のインストール環境のBambuSourceを使用しているため、動画が正しく再生されない可能性があります「はい」を押して修正してください。"
# AI Translated
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "お使いのシステムには、動画再生に必要なGStreamer用のH.264コーデックがありません。(gstreamer1.0-plugins-badまたはgstreamer1.0-libavパッケージをインストールし、Orca Slicerを再起動してみてください)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "クラウドエージェントが利用できません。OrcaSlicerを再起動して再試行してください。" msgstr "クラウドエージェントが利用できません。OrcaSlicerを再起動して再試行してください。"
@@ -12343,6 +12466,10 @@ msgstr "それでも印刷する場合は、環境設定 / 制御 / スライス
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "現在の設定では造形しません" msgstr "現在の設定では造形しません"
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "グラデーション付きの混合フィラメントが使用されていますが、「混色サブレイヤー」が無効です。グラデーションは印刷されません。"
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "オブジェクト順で造形するでは、この機能を使用できません。" msgstr "オブジェクト順で造形するでは、この機能を使用できません。"
@@ -12379,6 +12506,10 @@ msgstr "モデルのサイズを小さくするか、現在のプリント設定
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "可変レイヤー高さはオーガニックサポートではサポートされていません。" msgstr "可変レイヤー高さはオーガニックサポートではサポートされていません。"
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "ワイプタワーのフィラメントに混合フィラメントは使用できません。"
# AI Translated # AI Translated
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "ノズル径やフィラメント径が異なる場合、プライムタワーを有効にすると正しく動作しないことがあります。非常に実験的な機能ですので、慎重にお進みください。" msgstr "ノズル径やフィラメント径が異なる場合、プライムタワーを有効にすると正しく動作しないことがあります。非常に実験的な機能ですので、慎重にお進みください。"
@@ -12485,7 +12616,7 @@ msgid "Plate %d: %s does not support filament %s"
msgstr "プレート %d: %s がフィラメント %s を使用できません" msgstr "プレート %d: %s がフィラメント %s を使用できません"
msgid "Setting the jerk speed too low could lead to artifacts on curved surfaces" msgid "Setting the jerk speed too low could lead to artifacts on curved surfaces"
msgstr "ジャーク速度を低く設定しすぎると曲面にアーティファクトが発生する可能性があります" msgstr "Jerk速度を低く設定しすぎると曲面にアーティファクトが発生する可能性があります"
# AI Translated # AI Translated
msgid "" msgid ""
@@ -12756,14 +12887,12 @@ msgstr "mm 或は %"
msgid "Other layers" msgid "Other layers"
msgstr "他の層" msgstr "他の層"
# AI Translated msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "1層目を除く各層のベッド温度です。0の場合、そのフィラメントはCool Plate SuperTackでの印刷に対応していません。" msgstr "1層目を除く各層のベッド温度です。0の場合、そのフィラメントはCool Plate SuperTackでの印刷に対応していません。"
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "ベッドの温度です1層目以外。値が0の場合、フィラメントが常温プレートで使用できないという意味です。" msgstr "ベッドの温度です1層目以外。値が0の場合、フィラメントが常温プレートで使用できないという意味です。"
# AI Translated
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate."
msgstr "1層目を除く各層のベッド温度です。0の場合、そのフィラメントはTextured Cool Plateでの印刷に対応していません。" msgstr "1層目を除く各層のベッド温度です。0の場合、そのフィラメントはTextured Cool Plateでの印刷に対応していません。"
@@ -12774,7 +12903,7 @@ msgid "This is the bed temperature for layers except for the first one. A value
msgstr "ベッドの温度です1層目以外。値が0の場合、フィラメントが高温プレートで使用できないという意味です。" msgstr "ベッドの温度です1層目以外。値が0の場合、フィラメントが高温プレートで使用できないという意味です。"
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured PEI Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured PEI Plate."
msgstr "1層目以外のベッド温度。値が0の場合、フィラメントがPEIプレートをサポートしない意味をします。" msgstr "1層目を除く各層のベッド温度です。0の場合、そのフィラメントはTextured PEI Plateでの印刷に対応していません。"
msgid "First layer" msgid "First layer"
msgstr "1層目" msgstr "1層目"
@@ -14200,6 +14329,8 @@ msgstr "積層時間"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "パーツ冷却ファンは、積層造形時間がこの値より短い時に作動します。" msgstr "パーツ冷却ファンは、積層造形時間がこの値より短い時に作動します。"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14518,6 +14649,62 @@ msgstr "サポート材料"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "サポート素材は、サポート又はサポート接触面の造形によく使われます。" msgstr "サポート素材は、サポート又はサポート接触面の造形によく使われます。"
# AI Translated
msgid "Is mixed filament"
msgstr "混合フィラメントかどうか"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "このフィラメントスロットが複数の物理フィラメントで構成される混合フィラメントかどうか"
# AI Translated
msgid "Mixed filament components"
msgstr "混合フィラメントのコンポーネント"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "構成フィラメントの番号1 始まり)をカンマ区切りで指定します。例: \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "混合フィラメントのサブレイヤー比率"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "合計が 1.0 になる比率をカンマ区切りで指定します。例: \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "混合フィラメントのグラデーション"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "混合フィラメントのサブレイヤーに対して Z 方向のグラデーションモードを有効にします。有効にすると、サブレイヤーの比率が積層ごとに直線的に変化します。"
# AI Translated
msgid "Mixed filament gradient range"
msgstr "混合フィラメントのグラデーション範囲"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "グラデーションモードにおける最初のコンポーネントの開始比率と終了比率。カンマ区切りの 2 つの値で指定します。例: \"0.10,0.90\" は 10% から 90% を意味します。"
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "混合フィラメントのグラデーションカーブ"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Z 方向の進行度を最初のコンポーネントの比率に対応付ける、Photoshop 風のカスタムカーブ(省略可)。制御点を縦棒区切りでエンコードし、\"x,y\"(旧形式)または接線を上書きする場合は \"x,y,m_in,m_out\" の形式で指定します(空欄または \"nan\" は PCHIP の既定値を使用します。x は [0,1] の範囲で、y は設定された比率範囲に制限されます。例: \"0,0.15|0.5,0.50|1,0.85\"。空欄の場合は線形の gradient_range が使用されます。"
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "混合フィラメントのパーツ別グラデーション"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "グラデーションモードが有効な場合、アセンブリ全体を 1 つの Z 範囲として扱うのではなく、アセンブリ内の各パーツに個別にグラデーションを適用します。"
msgid "Filament printable" msgid "Filament printable"
msgstr "フィラメント印刷可能" msgstr "フィラメント印刷可能"
@@ -14750,7 +14937,7 @@ msgid "Klipper's max_accel_to_decel will be adjusted to this %% of acceleration.
msgstr "Klipperのmax_accel_to_decelが、加速度のこの%%に調整されます。" msgstr "Klipperのmax_accel_to_decelが、加速度のこの%%に調整されます。"
msgid "Default jerk." msgid "Default jerk."
msgstr "デフォルトジャーク。" msgstr "デフォルトのJerkです。"
# AI Translated # AI Translated
msgid "Marlin Firmware Junction Deviation (replaces the traditional XY Jerk setting)." msgid "Marlin Firmware Junction Deviation (replaces the traditional XY Jerk setting)."
@@ -15841,28 +16028,28 @@ msgid "Maximum acceleration of the E axis"
msgstr "E軸最大加速度" msgstr "E軸最大加速度"
msgid "Maximum jerk X" msgid "Maximum jerk X"
msgstr "最大振動 X" msgstr "最大Jerk X"
msgid "Maximum jerk Y" msgid "Maximum jerk Y"
msgstr "最大振動 Y" msgstr "最大Jerk Y"
msgid "Maximum jerk Z" msgid "Maximum jerk Z"
msgstr "最大振動 Z" msgstr "最大Jerk Z"
msgid "Maximum jerk E" msgid "Maximum jerk E"
msgstr "最大振動 E" msgstr "最大Jerk E"
msgid "Maximum jerk of the X axis" msgid "Maximum jerk of the X axis"
msgstr "最大振動 X" msgstr "X軸最大Jerk"
msgid "Maximum jerk of the Y axis" msgid "Maximum jerk of the Y axis"
msgstr "最大振動 Y" msgstr "Y軸最大Jerk"
msgid "Maximum jerk of the Z axis" msgid "Maximum jerk of the Z axis"
msgstr "最大振動 Z" msgstr "Z軸最大Jerk"
msgid "Maximum jerk of the E axis" msgid "Maximum jerk of the E axis"
msgstr "最大振動 E" msgstr "E軸最大Jerk"
msgid "Maximum Junction Deviation" msgid "Maximum Junction Deviation"
msgstr "最大接合偏差" msgstr "最大接合偏差"
@@ -15894,6 +16081,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Y軸の許容最大出力" msgstr "Y軸の許容最大出力"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15904,6 +16092,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Y軸のマシンベッド質量" msgstr "Y軸のマシンベッド質量"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16238,7 +16427,7 @@ msgstr "カッター領域から廃料排出口までの終始点"
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "インフィルのリトラクション低減" msgstr "インフィルのリトラクション低減"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "インフィル領域内の移動はリトラクションしません。造形時間を節約できます。" msgstr "インフィル領域内の移動はリトラクションしません。造形時間を節約できます。"
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16423,7 +16612,7 @@ msgstr "ワイプ後のリトラクション量"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"ワイプ後の高速リトラクションの長さで、リトラクション長に対する割合です。\n" "ワイプ後の高速リトラクションの長さで、リトラクション長に対する割合です。\n"
@@ -16474,7 +16663,7 @@ msgstr "ツール交換の前にリトラクションが行われるとき、指
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Zホップの高さ" msgstr "Zホップの高さ"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "リトラクション時に、ノズルを少し上げてから移動します。この動作でモデルとの衝突を回避できます。" msgstr "リトラクション時に、ノズルを少し上げてから移動します。この動作でモデルとの衝突を回避できます。"
# AI Translated # AI Translated
@@ -17633,6 +17822,14 @@ msgstr ""
"\n" "\n"
"下の「ワイプ前のリトラクション量」設定に値を設定すると、超過分のリトラクションはワイプの前に行われます。それ以外の場合はワイプの後に行われます。" "下の「ワイプ前のリトラクション量」設定に値を設定すると、超過分のリトラクションはワイプの前に行われます。それ以外の場合はワイプの後に行われます。"
# AI Translated
msgid "Mixed color sublayer"
msgstr "混色サブレイヤー"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "混色サブレイヤーへの分割を有効にします。有効にすると、混色フィラメントを含む積層がサブレイヤーに分割され、色を混ぜる効果が得られます。"
# AI Translated # AI Translated
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "ワイプタワーは、ノズルに残った樹脂を除去し、ノズル内のチャンバー圧力を安定させることで、オブジェクト印刷時の外観不良を防ぐために使用できます。" msgstr "ワイプタワーは、ノズルに残った樹脂を除去し、ノズル内のチャンバー圧力を安定させることで、オブジェクト印刷時の外観不良を防ぐために使用できます。"
@@ -18439,10 +18636,10 @@ msgid "Allow 3MF with newer version to be sliced."
msgstr "新しいバージョンの3MFのスライスを許可します。" msgstr "新しいバージョンの3MFのスライスを許可します。"
msgid "Current Z-hop" msgid "Current Z-hop"
msgstr "現在のz-hop" msgstr "現在のZ-hop"
msgid "Contains Z-hop present at the beginning of the custom G-code block." msgid "Contains Z-hop present at the beginning of the custom G-code block."
msgstr "カスタムGコードブロックの先頭に存在するz-hopを含む。" msgstr "カスタムGコードブロックの先頭に存在するZ-hopを含む。"
msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back." msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back."
msgstr "カスタム G コード ブロックの先頭のエクストルーダーのモーターの位置。 カスタム G コードで動かしたとき、PrusaSlicer が制御を取り戻したときにどこから移動したかを認識できるように、この変数に書き込む必要があります。" msgstr "カスタム G コード ブロックの先頭のエクストルーダーのモーターの位置。 カスタム G コードで動かしたとき、PrusaSlicer が制御を取り戻したときにどこから移動したかを認識できるように、この変数に書き込む必要があります。"
@@ -18804,6 +19001,10 @@ msgstr "モデルファイルのメッシュ処理に失敗したか、有効な
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "提供されたファイルは空であるため読み込めませんでした。" msgstr "提供されたファイルは空であるため読み込めませんでした。"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "ファイル形式に互換性がないため、解析できません。"
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "ファイル形式が不明です。入力ファイルの拡張子は .stl、.obj、.amf.xmlである必要があります。" msgstr "ファイル形式が不明です。入力ファイルの拡張子は .stl、.obj、.amf.xmlである必要があります。"
@@ -20340,19 +20541,19 @@ msgstr "プリンタ、フィラメント、加工プリセットに変更があ
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "フィラメントプリセットを変更したフィラメント名のみを表示します。" msgstr "フィラメントプリセットを変更したフィラメント名のみを表示します。"
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "ユーザープリンタプリセットを持つプリンタ名のみが表示され、選択した各プリセットがZIPとしてエクスポートされます。" msgstr "ユーザープリンタプリセットを持つプリンタ名のみが表示され、選択した各プリセットがZIPとしてエクスポートされます。"
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"ユーザーフィラメントプリセットを含むフィラメント名のみが表示されます、 \n" "ユーザーフィラメントプリセットを含むフィラメント名のみが表示されます、 \n"
"選択した各フィラメント名に含まれるすべてのユーザーフィラメントプリセットがZIP形式でエクスポートされます。" "選択した各フィラメント名に含まれるすべてのユーザーフィラメントプリセットがZIP形式でエクスポートされます。"
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "変更されたプロセスプリセットがあるプリンタ名のみが表示され、選択した各プリンタ名にあるすべてのユーザープロセスプリセットがZIP形式でエクスポートされます。" msgstr "変更されたプロセスプリセットがあるプリンタ名のみが表示され、選択した各プリンタ名にあるすべてのユーザープロセスプリセットがZIP形式でエクスポートされます。"
msgid "Please select at least one printer or filament." msgid "Please select at least one printer or filament."
@@ -20596,7 +20797,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "問題の原因を特定するために情報が必要です。詳しい手順はWikiページをご覧ください。" msgstr "問題の原因を特定するために情報が必要です。詳しい手順はWikiページをご覧ください。"
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "「パック」ボタンは、現在のセッションのプロジェクトファイルとログをzipファイルにまとめます。" msgstr "「パック」ボタンは、現在のセッションのプロジェクトファイルとログをzipファイルにまとめます。"
# AI Translated # AI Translated
@@ -20652,7 +20853,7 @@ msgid "Stored logs"
msgstr "保存されたログ" msgstr "保存されたログ"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "保存されたすべてのログをzipファイルにまとめます。" msgstr "保存されたすべてのログをzipファイルにまとめます。"
# AI Translated # AI Translated
@@ -20740,7 +20941,7 @@ msgid "Authorizing..."
msgstr "認証中..." msgstr "認証中..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "エラー。認証用のAPIトークンを取得できません" msgstr "エラー。認証用のAPIトークンを取得できません"
# AI Translated # AI Translated
@@ -21226,8 +21427,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "スマートフィラメント割り当てを有効にする: 1つのフィラメントを複数のズルに割り当てて節約を最大化します" msgstr "スマートフィラメント割り当てを有効にする: 1つのフィラメントを複数のズルに割り当てて節約を最大化します"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "フィラ節約" msgstr "ファイル保存"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "再度通知しない" msgstr "再度通知しない"
@@ -21555,6 +21756,15 @@ msgstr "この操作は元に戻せません。続行しますか?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "オブジェクトをスキップ中。" msgstr "オブジェクトをスキップ中。"
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "フィラメントを選択" msgstr "フィラメントを選択"
@@ -21634,6 +21844,9 @@ msgstr "今すぐ再起動"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "ラミングなし" msgstr "ラミングなし"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "体積速度" msgstr "体積速度"
@@ -22296,6 +22509,45 @@ msgstr ""
"反りを避ける\n" "反りを避ける\n"
"ABSのような反りやすい素材を印刷する場合、ヒートベッドの温度を適切に上げることで、反りが発生する確率を下げることができることをご存知ですか" "ABSのような反りやすい素材を印刷する場合、ヒートベッドの温度を適切に上げることで、反りが発生する確率を下げることができることをご存知ですか"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "ネイティブWaylandのライブビューにはGStreamer GTKビデオシンクが必要です。GStreamer用のgtksinkプラグインをインストールし、OrcaSlicerを再起動してください。"
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "ネイティブWaylandのGStreamerビデオシンクの初期化に失敗しました。GStreamer GTKプラグインのインストール状況をご確認ください。"
# AI Translated
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "このタスクにはWindows Media Playerが必要ですお使いのOSで「Windows Media Player」を有効にしますか"
# AI Translated
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "メディア再生用のBambuSourceが正しく登録されていません「はい」を押して再登録してください。確認が2回表示されます"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "メディア再生用のBambuSourceコンポーネントが見つかりませんOrcaSlicerを再インストールするかコミュニティに助けを求めてください。"
# AI Translated
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "別のインストール環境のBambuSourceを使用しているため、動画が正しく再生されない可能性があります「はい」を押して修正してください。"
# AI Translated
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "お使いのシステムには、動画再生に必要なGStreamer用のH.264コーデックがありません。(gstreamer1.0-plugins-badまたはgstreamer1.0-libavパッケージをインストールし、Orca Slicerを再起動してみてください)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "フィラ節約"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2025-06-02 17:12+0900\n" "PO-Revision-Date: 2025-06-02 17:12+0900\n"
"Last-Translator: crwusiz <crwusiz@gmail.com>\n" "Last-Translator: crwusiz <crwusiz@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2970,6 +2970,10 @@ msgstr "편집"
msgid "Merge with" msgid "Merge with"
msgstr "병합" msgstr "병합"
# AI Translated
msgid "Decompose Color"
msgstr "색상 분해"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "이 필라멘트 삭제" msgstr "이 필라멘트 삭제"
@@ -3266,6 +3270,10 @@ msgstr "조립"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "부품을 하나의 객체로 병합" msgstr "부품을 하나의 객체로 병합"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "가변 레이어 높이를 혼색 서브레이어와 함께 사용하면 색상 혼합 품질이 떨어질 수 있습니다."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "레이어 추가" msgstr "레이어 추가"
@@ -4829,7 +4837,7 @@ msgstr ""
"\n" "\n"
"값이 0으로 재설정됩니다." "값이 0으로 재설정됩니다."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "세로 쉘 두께가 모두로 설정된 경우 대체 여분의 벽이 제대로 작동하지 않습니다." msgstr "세로 쉘 두께가 모두로 설정된 경우 대체 여분의 벽이 제대로 작동하지 않습니다."
msgid "" msgid ""
@@ -4875,7 +4883,7 @@ msgstr ""
"아니요 - 독립적 서포트 레이어 높이 유지" "아니요 - 독립적 서포트 레이어 높이 유지"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"심_경사_시작_높이는 레이어_높이보다 작아야 합니다.\n" "심_경사_시작_높이는 레이어_높이보다 작아야 합니다.\n"
@@ -4883,7 +4891,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"잠금 깊이는 스킨 깊이보다 작아야 합니다.\n" "잠금 깊이는 스킨 깊이보다 작아야 합니다.\n"
@@ -4923,6 +4931,10 @@ msgstr ""
"예 - 이 설정을 변경하고 나선 모드를 자동으로 활성화합니다\n" "예 - 이 설정을 변경하고 나선 모드를 자동으로 활성화합니다\n"
"아니오 - 이번에는 나선 모드 사용을 포기합니다" "아니오 - 이번에는 나선 모드 사용을 포기합니다"
# AI Translated
msgid "N/A"
msgstr "해당 없음"
msgid "Printing" msgid "Printing"
msgstr "출력 중" msgstr "출력 중"
@@ -5382,10 +5394,6 @@ msgstr "잘못된 패턴입니다. N, N#K 또는 항목당 선택적 #K가 있
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "잘못된 형식입니다. 필요한 벡터 형식: \"%1%\"" msgstr "잘못된 형식입니다. 필요한 벡터 형식: \"%1%\""
# AI Translated
msgid "N/A"
msgstr "해당 없음"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "시스템 에이전트" msgstr "시스템 에이전트"
@@ -6342,16 +6350,22 @@ msgstr "프로젝트 다른 이름으로 저장"
msgid "Save current project as" msgid "Save current project as"
msgstr "현재 프로젝트 다른 이름으로 저장" msgstr "현재 프로젝트 다른 이름으로 저장"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "3MF/STL/STEP/SVG/OBJ/AMF 가져오기" msgstr "3MF/STL/STEP/SVG/OBJ/AMF 가져오기"
msgid "Load a model" msgid "Load a model"
msgstr "모델 불러오기" msgstr "모델 불러오기"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "ZIP 압축파일 가져오기" msgstr "ZIP 압축파일 가져오기"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "ZIP 압축파일에 포함된 모델 로드" msgstr "ZIP 압축파일에 포함된 모델 로드"
msgid "Import Configs" msgid "Import Configs"
@@ -7871,6 +7885,10 @@ msgstr "사용자 정의 플레이트"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%s 노즐은 %s 을 인쇄할 수 없습니다." msgstr "%s 노즐은 %s 을 인쇄할 수 없습니다."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "단일 압출기 프린터에서 혼색 필라멘트를 출력하면 필라멘트 교체와 플러시가 자주 발생하여 낭비되는 재료와 노즐 / 폐기물 슈트 막힘 위험이 크게 늘어날 수 있습니다."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "%1%와 %2% 혼합 출력을 권장하지 않습니다.\n" msgstr "%1%와 %2% 혼합 출력을 권장하지 않습니다.\n"
@@ -7997,12 +8015,44 @@ msgstr "AMS에서 필라멘트 목록 동기화"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "사용할 필라멘트 설정" msgstr "사용할 필라멘트 설정"
# AI Translated
msgid "Add Mixed Filament"
msgstr "혼합 필라멘트 추가"
# AI Translated
msgid "Mixed Filament"
msgstr "혼합 필라멘트"
# AI Translated
msgid "Remove last mixed filament"
msgstr "마지막 혼합 필라멘트 제거"
# AI Translated
msgid "Add mixed filament"
msgstr "혼합 필라멘트 추가"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "혼합 필라멘트의 구성 요소가 잘못되었거나 일치하지 않습니다. 해당 항목을 다시 편집하세요."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "플레이트, 객체 및 부품을 검색합니다." msgstr "플레이트, 객체 및 부품을 검색합니다."
msgid "Pellets" msgid "Pellets"
msgstr "펠릿" msgstr "펠릿"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "혼합 필라멘트의 구성 요소 참조가 손상되었습니다"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "편집 / 삭제 / 병합"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "대상 혼합 필라멘트가 이 물리 필라멘트를 구성 요소로 사용합니다. 병합하면 이 물리 필라멘트가 제거되어 혼합 필라멘트가 무효가 될 수 있습니다. 계속할까요?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "작업을 완료하면 %s 프로젝트가 닫히고 새 프로젝트가 만들어집니다." msgstr "작업을 완료하면 %s 프로젝트가 닫히고 새 프로젝트가 만들어집니다."
@@ -8151,9 +8201,15 @@ msgstr "이러한 사전 설정 내의 Gcode가 기계 손상을 방지할 수
msgid "Customized Preset" msgid "Customized Preset"
msgstr "사용자 정의 프리셋" msgstr "사용자 정의 프리셋"
msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
# AI Translated # AI Translated
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "STEP 파일 내부의 구성 요소 이름이 UTF8 형식이 아닙니다!" msgstr "STEP 파일 내부의 구성 요소 이름이 UTF-8 형식이 아닙니다!"
# AI Translated # AI Translated
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -8175,7 +8231,7 @@ msgstr "물체의 부피는 0입니다"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"%s 파일의 객체가 너무 작습니다. 단위가 미터나 인치일 수 있습니다.\n" "%s 파일의 객체가 너무 작습니다. 단위가 미터나 인치일 수 있습니다.\n"
" mm 단위로 확장하시겠습니까?" " mm 단위로 확장하시겠습니까?"
@@ -8195,6 +8251,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "여러 부품으로 구성된 객체 감지됨" msgstr "여러 부품으로 구성된 객체 감지됨"
# AI Translated
msgid "Matching textures to filaments"
msgstr "텍스처를 필라멘트에 매칭하는 중"
# AI Translated
msgid "Texture Import Warning"
msgstr "텍스처 가져오기 경고"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "이 파일을 여러 부품이 있는 단일 객체로 로드하시겠습니까?\n" msgstr "이 파일을 여러 부품이 있는 단일 객체로 로드하시겠습니까?\n"
@@ -8423,6 +8487,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "지금 동기화" msgstr "지금 동기화"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "텍스처 가져오기에 실패했습니다. 모델에 텍스처 데이터가 포함된 것으로 보이지만 텍스처 가져오기 과정을 완료하지 못했습니다. 모델은 형상만 가져옵니다."
# AI Translated
msgid "Applying texture colors..."
msgstr "텍스처 색상 적용 중..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3D 뷰 업데이트 중..."
# AI Translated
msgid "Texture colors applied."
msgstr "텍스처 색상이 적용되었습니다."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "수정된 사전 설정을 새 프로젝트에 유지하거나 삭제할 수 있습니다" msgstr "수정된 사전 설정을 새 프로젝트에 유지하거나 삭제할 수 있습니다"
@@ -8554,6 +8634,17 @@ msgstr "슬라이스 파일을 다음으로 저장:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "%s 파일이 프린터의 저장 공간으로 전송되었으며 프린터에서 볼 수 있습니다." msgstr "%s 파일이 프린터의 저장 공간으로 전송되었으며 프린터에서 볼 수 있습니다."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "게시"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "노즐 유형이 설정되지 않았습니다. 노즐을 설정하고 다시 시도하세요." msgstr "노즐 유형이 설정되지 않았습니다. 노즐을 설정하고 다시 시도하세요."
@@ -9766,6 +9857,10 @@ msgstr "나선형 꽃병 모드"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "첫 번째 레이어 필라멘트 순서" msgstr "첫 번째 레이어 필라멘트 순서"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "필라멘트 목록에 혼합 필라멘트가 있습니다. 사용자 지정 필라멘트 순서는 적용되지 않습니다."
msgid "By Layer" msgid "By Layer"
msgstr "레이어별" msgstr "레이어별"
@@ -9793,9 +9888,6 @@ msgstr "모델 게시 웹 페이지로 이동"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "참고: 준비하는 데 몇 분 정도 걸릴 수 있습니다. 조금만 기다려 주십시오." msgstr "참고: 준비하는 데 몇 분 정도 걸릴 수 있습니다. 조금만 기다려 주십시오."
msgid "Publish"
msgstr "게시"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "게시가 취소되었습니다" msgstr "게시가 취소되었습니다"
@@ -9812,6 +9904,64 @@ msgstr "데이터 업로드 중"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "웹 페이지로 이동" msgstr "웹 페이지로 이동"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "%s을(를) 다음으로 저장" msgstr "%s을(를) 다음으로 저장"
@@ -11188,12 +11338,12 @@ msgid "No modifications need to be copied."
msgstr "복사할 변경 사항이 없습니다." msgstr "복사할 변경 사항이 없습니다."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "매개변수 복사" msgstr "매개변수 복사"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "%s의 매개변수 수정" msgstr "%s의 매개변수 수정"
# AI Translated # AI Translated
@@ -11723,30 +11873,6 @@ msgstr "필라멘트 교체를 위한 버리기 볼륨"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "필라멘트 색상을 선택하세요" msgstr "필라멘트 색상을 선택하세요"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "네이티브 Wayland 실시간 보기에는 GStreamer GTK 비디오 싱크가 필요합니다. GStreamer용 gtksink 플러그인을 설치한 후 OrcaSlicer를 다시 시작하십시오."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "네이티브 Wayland GStreamer 비디오 싱크를 초기화하지 못했습니다. GStreamer GTK 플러그인 설치 상태를 확인하십시오."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "이 작업에는 Windows Media Player가 필요합니다! 운영 체제에서 Windows Media Player를 활성화하시겠습니까?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "뱀부소스가 미디어 재생에 올바르게 등록되지 않았습니다! 다시 등록하려면 예를 누르세요. 두 번 승격됩니다"
# AI Translated
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "미디어 재생용으로 등록된 BambuSource 구성 요소가 없습니다! OrcaSlicer를 다시 설치하거나 커뮤니티에 도움을 요청하십시오."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "다른 설치 버전의 뱀부소스를 사용하면 동영상 재생이 제대로 작동하지 않을 수 있습니다! 예를 눌러 문제를 해결하세요."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "시스템에 동영상 재생을 위해 필요한 GStreamer용 H.264 코덱이 존재하지 않습니다. (gstreamer1.0-plugins-bad 또는 gstreamer1.0-libav 패키지를 설치한 다음 Orca Slicer를 다시 실행하십시오.)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "클라우드 에이전트를 사용할 수 없습니다. OrcaSlicer를 다시 시작한 후 다시 시도하십시오." msgstr "클라우드 에이전트를 사용할 수 없습니다. OrcaSlicer를 다시 시작한 후 다시 시도하십시오."
@@ -12475,6 +12601,10 @@ msgstr "그래도 출력하려면 기본 설정 / 제어 / 슬라이싱 / 혼합
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "현재 설정에 압출기가 없습니다." msgstr "현재 설정에 압출기가 없습니다."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "그라데이션 혼합 필라멘트가 사용 중이지만 '혼색 서브레이어'가 비활성화되어 있습니다. 그라데이션은 출력되지 않습니다."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "타임랩스의 유연 모드는 \"객체별\" 출력순서가 활성화된 경우 지원되지 않습니다." msgstr "타임랩스의 유연 모드는 \"객체별\" 출력순서가 활성화된 경우 지원되지 않습니다."
@@ -12513,6 +12643,10 @@ msgstr "모델 크기를 줄이거나 현재 출력 설정을 변경하고 다
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "유기체 서포트에서는 가변 레이어 높이가 지원되지 않습니다." msgstr "유기체 서포트에서는 가변 레이어 높이가 지원되지 않습니다."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "프라임 타워 필라멘트는 혼합 필라멘트일 수 없습니다."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "프라임 타워를 활성화하면 노즐 직경과 필라멘트 직경이 다르면 제대로 작동하지 않을 수 있습니다. 매우 실험적인 기능이므로 주의해서 사용하시기 바랍니다." msgstr "프라임 타워를 활성화하면 노즐 직경과 필라멘트 직경이 다르면 제대로 작동하지 않을 수 있습니다. 매우 실험적인 기능이므로 주의해서 사용하시기 바랍니다."
@@ -12889,8 +13023,7 @@ msgstr "mm 또는 %"
msgid "Other layers" msgid "Other layers"
msgstr "다른 레이어" msgstr "다른 레이어"
# AI Translated msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "초기 레이어를 제외한 레이어의 베드 온도입니다. 값이 0이면 해당 필라멘트가 쿨 플레이트 슈퍼택에서의 출력을 지원하지 않음을 의미합니다." msgstr "초기 레이어를 제외한 레이어의 베드 온도입니다. 값이 0이면 해당 필라멘트가 쿨 플레이트 슈퍼택에서의 출력을 지원하지 않음을 의미합니다."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14307,6 +14440,8 @@ msgstr "레이어 시간"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "예상 시간이 이 값보다 짧은 레이어에 대해 출력물 냉각 팬이 활성화됩니다. 팬 속도는 레이어 출력 시간에 따라 최소 및 최대 팬 속도 사이에서 보간됩니다" msgstr "예상 시간이 이 값보다 짧은 레이어에 대해 출력물 냉각 팬이 활성화됩니다. 팬 속도는 레이어 출력 시간에 따라 최소 및 최대 팬 속도 사이에서 보간됩니다"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14620,6 +14755,62 @@ msgstr "서포트 재료"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "서포트 재료는 일반적으로 서포트 및 서포트 접점을 출력하는 데 사용됩니다" msgstr "서포트 재료는 일반적으로 서포트 및 서포트 접점을 출력하는 데 사용됩니다"
# AI Translated
msgid "Is mixed filament"
msgstr "혼합 필라멘트 여부"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "이 필라멘트 슬롯이 여러 물리 필라멘트로 구성된 혼합 필라멘트인지 여부"
# AI Translated
msgid "Mixed filament components"
msgstr "혼합 필라멘트 구성 요소"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "구성 필라멘트의 1부터 시작하는 인덱스를 쉼표로 구분하여 입력합니다. 예: \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "혼합 필라멘트 서브레이어 비율"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "합이 1.0이 되는 비율 값을 쉼표로 구분하여 입력합니다. 예: \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "혼합 필라멘트 그라데이션"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "혼합 필라멘트 서브레이어에 대해 Z 방향 그라데이션 모드를 활성화합니다. 활성화하면 서브레이어 비율이 레이어에 따라 선형으로 변합니다."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "혼합 필라멘트 그라데이션 범위"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "그라데이션 모드에서 첫 번째 구성 요소의 시작 및 종료 비율입니다. 쉼표로 구분된 한 쌍이며, 예를 들어 \"0.10,0.90\"은 10%에서 90%를 의미합니다."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "혼합 필라멘트 그라데이션 곡선"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Z 진행도를 첫 번째 구성 요소의 비율에 매핑하는 선택적 Photoshop 스타일 사용자 지정 곡선입니다. 제어점을 세로줄로 구분하여 \"x,y\"(레거시) 또는 접선을 재정의해야 할 때는 \"x,y,m_in,m_out\" 형식으로 인코딩합니다(빈 값 또는 \"nan\"은 PCHIP 기본값을 사용). x는 [0,1] 범위이며, y는 설정된 비율 범위로 제한됩니다. 예: \"0,0.15|0.5,0.50|1,0.85\". 비워 두면 대신 선형 gradient_range가 사용됩니다."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "혼합 필라멘트 부품별 그라데이션"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "그라데이션 모드가 활성화되면 조립 전체를 하나의 Z 범위로 처리하지 않고 조립의 각 부품에 그라데이션을 개별적으로 적용합니다."
msgid "Filament printable" msgid "Filament printable"
msgstr "필라멘트 출력 가능" msgstr "필라멘트 출력 가능"
@@ -15938,6 +16129,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Y축의 허용 최대 출력 힘" msgstr "Y축의 허용 최대 출력 힘"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15948,6 +16140,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Y축 장비 베드 질량 하중" msgstr "Y축 장비 베드 질량 하중"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16276,7 +16469,7 @@ msgid "Reduce infill retraction"
msgstr "채우기 후퇴 감소" msgstr "채우기 후퇴 감소"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "이동 경로가 완전히 채우기 영역 안에 있으면 후퇴하지 않습니다. 흘러내림이 보이지 않기 때문입니다. 복잡한 모델에서 후퇴 횟수를 줄여 출력 시간을 절약할 수 있지만 슬라이싱과 G-code 생성 속도는 느려집니다. 후퇴를 건너뛴 영역에서는 Z 올리기도 수행되지 않습니다." msgstr "이동 경로가 완전히 채우기 영역 안에 있으면 후퇴하지 않습니다. 흘러내림이 보이지 않기 때문입니다. 복잡한 모델에서 후퇴 횟수를 줄여 출력 시간을 절약할 수 있지만 슬라이싱과 G-code 생성 속도는 느려집니다. 후퇴를 건너뛴 영역에서는 Z 올리기도 수행되지 않습니다."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16453,7 +16646,7 @@ msgstr "노즐 청소 후 후퇴량"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"노즐 청소 후 빠른 후퇴의 길이로, 후퇴 길이를 기준으로 합니다.\n" "노즐 청소 후 빠른 후퇴의 길이로, 후퇴 길이를 기준으로 합니다.\n"
@@ -16500,7 +16693,7 @@ msgstr "툴 체인지 전에 후퇴가 실행되면 지정한 양만큼 필라
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z올리기 높이" msgstr "Z올리기 높이"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "후퇴가 완료될 때마다 노즐이 약간 올라가서 노즐과 출력물 사이에 간격이 생깁니다. 이동 시 노즐이 출력물에 닿는 것을 방지합니다. 나선형 선을 사용하여 z를 들어 올리면 스트링 현상을 방지할 수 있습니다" msgstr "후퇴가 완료될 때마다 노즐이 약간 올라가서 노즐과 출력물 사이에 간격이 생깁니다. 이동 시 노즐이 출력물에 닿는 것을 방지합니다. 나선형 선을 사용하여 z를 들어 올리면 스트링 현상을 방지할 수 있습니다"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17579,6 +17772,14 @@ msgstr ""
"\n" "\n"
"아래의 와이프 전 후퇴량 설정에서 값을 설정하면 와이프 전에 초과 후퇴가 수행되고, 그렇지 않으면 와이프 후에 수행됩니다." "아래의 와이프 전 후퇴량 설정에서 값을 설정하면 와이프 전에 초과 후퇴가 수행되고, 그렇지 않으면 와이프 후에 수행됩니다."
# AI Translated
msgid "Mixed color sublayer"
msgstr "혼색 서브레이어"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "혼색 서브레이어 분할을 활성화합니다. 활성화하면 혼색 필라멘트가 포함된 레이어가 서브레이어로 분할되어 색상 혼합 효과를 얻습니다."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "프라임 타워는 객체를 출력할 때 외관 결함을 방지하기 위해 노즐의 잔류물을 청소하고 노즐 내부의 압력을 안정화하는 데 사용할 수 있습니다." msgstr "프라임 타워는 객체를 출력할 때 외관 결함을 방지하기 위해 노즐의 잔류물을 청소하고 노즐 내부의 압력을 안정화하는 데 사용할 수 있습니다."
@@ -18682,6 +18883,10 @@ msgstr "모델 파일의 메싱이 실패했거나 유효한 형태가 없습니
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "제공된 파일이 비어 있어 읽을 수 없습니다" msgstr "제공된 파일이 비어 있어 읽을 수 없습니다"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "파일 형식이 호환되지 않아 해석할 수 없습니다."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "알 수 없는 파일 형식: 입력 파일의 확장자는 .stl, .obj 또는 .amf(.xml)여야 합니다." msgstr "알 수 없는 파일 형식: 입력 파일의 확장자는 .stl, .obj 또는 .amf(.xml)여야 합니다."
@@ -20213,19 +20418,19 @@ msgstr "프린터, 필라멘트 및 프로세스 사전 설정이 변경된 경
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "필라멘트 사전 설정이 변경된 경우에만 필라멘트 이름을 표시합니다." msgstr "필라멘트 사전 설정이 변경된 경우에만 필라멘트 이름을 표시합니다."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "사용자 프린터 사전 설정이 있는 프린터 이름만 표시되며, 선택한 각 사전 설정은 zip으로 내보내집니다." msgstr "사용자 프린터 사전 설정이 있는 프린터 이름만 표시되며, 선택한 각 사전 설정은 zip으로 내보내집니다."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"사용자 필라멘트 사전 설정이 있는 필라멘트 이름만 표시됩니다.\n" "사용자 필라멘트 사전 설정이 있는 필라멘트 이름만 표시됩니다.\n"
"선택한 각 필라멘트 이름의 모든 사용자 필라멘트 사전 설정은 zip으로 내보내집니다." "선택한 각 필라멘트 이름의 모든 사용자 필라멘트 사전 설정은 zip으로 내보내집니다."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"프로세스 사전 설정이 변경된 프린터 이름만 표시됩니다.\n" "프로세스 사전 설정이 변경된 프린터 이름만 표시됩니다.\n"
"선택한 각 프린터 이름의 모든 사용자 프로세스 사전 설정은 zip으로 내보내집니다." "선택한 각 프린터 이름의 모든 사용자 프로세스 사전 설정은 zip으로 내보내집니다."
@@ -20469,7 +20674,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "문제의 원인을 진단하려면 정보가 필요합니다. 자세한 안내는 위키 페이지를 확인하십시오." msgstr "문제의 원인을 진단하려면 정보가 필요합니다. 자세한 안내는 위키 페이지를 확인하십시오."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "패키지 버튼은 현재 세션의 프로젝트 파일과 로그를 zip 파일로 모읍니다." msgstr "패키지 버튼은 현재 세션의 프로젝트 파일과 로그를 zip 파일로 모읍니다."
# AI Translated # AI Translated
@@ -20525,7 +20730,7 @@ msgid "Stored logs"
msgstr "저장된 로그" msgstr "저장된 로그"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "저장된 모든 로그를 zip 파일로 묶습니다." msgstr "저장된 모든 로그를 zip 파일로 묶습니다."
# AI Translated # AI Translated
@@ -20613,7 +20818,7 @@ msgid "Authorizing..."
msgstr "인증 중..." msgstr "인증 중..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "오류. 인증용 API 토큰을 가져올 수 없습니다" msgstr "오류. 인증용 API 토큰을 가져올 수 없습니다"
# AI Translated # AI Translated
@@ -21075,8 +21280,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "스마트 필라멘트 할당 활성화: 하나의 필라멘트를 여러 노즐에 할당하여 절약을 극대화합니다" msgstr "스마트 필라멘트 할당 활성화: 하나의 필라멘트를 여러 노즐에 할당하여 절약을 극대화합니다"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "필라멘트 절약" msgstr "파일 저장"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "다시 알리지 마세요" msgstr "다시 알리지 마세요"
@@ -21409,6 +21614,15 @@ msgstr "이 작업은 취소할 수 없습니다. 계속하시겠습니까?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "물체 건너뛰기" msgstr "물체 건너뛰기"
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "필라멘트 선택" msgstr "필라멘트 선택"
@@ -21506,6 +21720,9 @@ msgstr "지금 다시 시작"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "채워넣기 전혀 없음" msgstr "채워넣기 전혀 없음"
msgid "s"
msgstr "s"
# AI Translated # AI Translated
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "압출 속도" msgstr "압출 속도"
@@ -22159,6 +22376,42 @@ msgstr ""
"뒤틀림 방지\n" "뒤틀림 방지\n"
"ABS와 같이 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 높이면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?" "ABS와 같이 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 높이면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "네이티브 Wayland 실시간 보기에는 GStreamer GTK 비디오 싱크가 필요합니다. GStreamer용 gtksink 플러그인을 설치한 후 OrcaSlicer를 다시 시작하십시오."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "네이티브 Wayland GStreamer 비디오 싱크를 초기화하지 못했습니다. GStreamer GTK 플러그인 설치 상태를 확인하십시오."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "이 작업에는 Windows Media Player가 필요합니다! 운영 체제에서 Windows Media Player를 활성화하시겠습니까?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "뱀부소스가 미디어 재생에 올바르게 등록되지 않았습니다! 다시 등록하려면 예를 누르세요. 두 번 승격됩니다"
# AI Translated
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "미디어 재생용으로 등록된 BambuSource 구성 요소가 없습니다! OrcaSlicer를 다시 설치하거나 커뮤니티에 도움을 요청하십시오."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "다른 설치 버전의 뱀부소스를 사용하면 동영상 재생이 제대로 작동하지 않을 수 있습니다! 예를 눌러 문제를 해결하세요."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "시스템에 동영상 재생을 위해 필요한 GStreamer용 H.264 코덱이 존재하지 않습니다. (gstreamer1.0-plugins-bad 또는 gstreamer1.0-libav 패키지를 설치한 다음 Orca Slicer를 다시 실행하십시오.)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "필라멘트 절약"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -136,6 +136,7 @@ src/slic3r/GUI/BackgroundSlicingProcess.cpp
src/slic3r/GUI/BedShapeDialog.cpp src/slic3r/GUI/BedShapeDialog.cpp
src/slic3r/GUI/BedShapeDialog.hpp src/slic3r/GUI/BedShapeDialog.hpp
src/slic3r/GUI/ConfigManipulation.cpp src/slic3r/GUI/ConfigManipulation.cpp
src/slic3r/GUI/ConfigValueFormatter.cpp
src/slic3r/GUI/DeviceManager.cpp src/slic3r/GUI/DeviceManager.cpp
src/slic3r/GUI/DeviceErrorDialog.cpp src/slic3r/GUI/DeviceErrorDialog.cpp
src/slic3r/GUI/ExtraRenderers.cpp src/slic3r/GUI/ExtraRenderers.cpp
@@ -175,6 +176,7 @@ src/slic3r/GUI/ProgressStatusBar.cpp
src/slic3r/GUI/PlateSettingsDialog.cpp src/slic3r/GUI/PlateSettingsDialog.cpp
src/slic3r/GUI/PrivacyUpdateDialog.cpp src/slic3r/GUI/PrivacyUpdateDialog.cpp
src/slic3r/GUI/PublishDialog.cpp src/slic3r/GUI/PublishDialog.cpp
src/slic3r/GUI/PublishSettingsDialog.cpp
src/slic3r/GUI/SavePresetDialog.cpp src/slic3r/GUI/SavePresetDialog.cpp
src/slic3r/GUI/Search.cpp src/slic3r/GUI/Search.cpp
src/slic3r/GUI/Selection.cpp src/slic3r/GUI/Selection.cpp
@@ -193,7 +195,6 @@ src/slic3r/GUI/ObjColorDialog.cpp
src/slic3r/GUI/SyncAmsInfoDialog.cpp src/slic3r/GUI/SyncAmsInfoDialog.cpp
src/slic3r/GUI/WipeTowerDialog.cpp src/slic3r/GUI/WipeTowerDialog.cpp
src/slic3r/GUI/wxExtensions.cpp src/slic3r/GUI/wxExtensions.cpp
src/slic3r/GUI/wxMediaCtrl2.cpp
src/slic3r/GUI/WebUserLoginDialog.cpp src/slic3r/GUI/WebUserLoginDialog.cpp
src/slic3r/GUI/WebGuideDialog.cpp src/slic3r/GUI/WebGuideDialog.cpp
src/slic3r/GUI/KBShortcutsDialog.hpp src/slic3r/GUI/KBShortcutsDialog.hpp

View File

@@ -3,12 +3,11 @@
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
#, fuzzy
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-07-02 14:13+0300\n" "PO-Revision-Date: 2026-07-02 14:13+0300\n"
"Last-Translator: Gintaras Kučinskas <sharanchius@gmail.com>\n" "Last-Translator: Gintaras Kučinskas <sharanchius@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2937,6 +2936,10 @@ msgstr "Redaguoti"
msgid "Merge with" msgid "Merge with"
msgstr "Sujungti su" msgstr "Sujungti su"
# AI Translated
msgid "Decompose Color"
msgstr "Išskaidyti spalvą"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Ištrinti šią giją" msgstr "Ištrinti šią giją"
@@ -3238,6 +3241,10 @@ msgstr "Surinkimas"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Sujungti dalis į objektą" msgstr "Sujungti dalis į objektą"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Kintamo sluoksnio aukščio naudojimas kartu su mišrios spalvos posluoksniu gali pabloginti spalvų maišymo kokybę."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Pridėti sluoksnių" msgstr "Pridėti sluoksnių"
@@ -4792,7 +4799,7 @@ msgstr ""
"\n" "\n"
"Reikšmė bus atstatyta į 0." "Reikšmė bus atstatyta į 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Alternatyvi papildoma sienelė veikia prastai, kai vertikalaus apvalkalo storio užtikrinimas nustatytas į „Visi“." msgstr "Alternatyvi papildoma sienelė veikia prastai, kai vertikalaus apvalkalo storio užtikrinimas nustatytas į „Visi“."
msgid "" msgid ""
@@ -4838,7 +4845,7 @@ msgstr ""
"NE palikti nepriklausomą atramų sluoksnio aukštį" "NE palikti nepriklausomą atramų sluoksnio aukštį"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"„seam_slope_start_height“ turi būti mažesnis už „layer_height“\n" "„seam_slope_start_height“ turi būti mažesnis už „layer_height“\n"
@@ -4846,7 +4853,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Fiksavimo gylis turėtų būti mažesnis už išorinio sluoksnio gylį.\n" "Fiksavimo gylis turėtų būti mažesnis už išorinio sluoksnio gylį.\n"
@@ -4886,6 +4893,9 @@ msgstr ""
"Taip pakeisti šiuos nustatymus ir automatiškai įjungti spiralinį režimą\n" "Taip pakeisti šiuos nustatymus ir automatiškai įjungti spiralinį režimą\n"
"Ne nenaudoti spiralinio režimo" "Ne nenaudoti spiralinio režimo"
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Spausdinimas" msgstr "Spausdinimas"
@@ -5345,9 +5355,6 @@ msgstr "Neteisingas šablonas. Naudokite N, N#K arba kableliais atskirtą sąra
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Netinkamas formatas. Tinkamas vektorinis formatas: \"%1%\"" msgstr "Netinkamas formatas. Tinkamas vektorinis formatas: \"%1%\""
msgid "N/A"
msgstr "N/A"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Sisteminiai agentai" msgstr "Sisteminiai agentai"
@@ -6305,16 +6312,22 @@ msgstr "Įrašyti projektą kaip"
msgid "Save current project as" msgid "Save current project as"
msgstr "Įrašyti dabartinį projektą kaip" msgstr "Įrašyti dabartinį projektą kaip"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importuoti 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importuoti 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Įkelti modelį" msgstr "Įkelti modelį"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importuoti Zip archyvą" msgstr "Importuoti Zip archyvą"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Įkelti modelius iš ZIP archyvo" msgstr "Įkelti modelius iš ZIP archyvo"
msgid "Import Configs" msgid "Import Configs"
@@ -7835,6 +7848,10 @@ msgstr "Individualizuoti esamą plokštę"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%s purkštukas negali spausdinti %s." msgstr "%s purkštukas negali spausdinti %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Spausdinant mišrios spalvos giją vieno ekstruderio spausdintuvu reikia dažnai keisti giją ir pravalyti, todėl gali gerokai padidėti atliekų kiekis ir purkštuko arba atliekų latako užsikimšimo rizika."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "" msgstr ""
@@ -7968,12 +7985,44 @@ msgstr "Sinchronizuoti gijų sąrašą iš AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Nustatyti gijas naudojimui" msgstr "Nustatyti gijas naudojimui"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Pridėti mišrią giją"
# AI Translated
msgid "Mixed Filament"
msgstr "Mišri gija"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Pašalinti paskutinę mišrią giją"
# AI Translated
msgid "Add mixed filament"
msgstr "Pridėti mišrią giją"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Mišri gija turi netinkamų arba neatitinkančių komponentų. Iš naujo suredaguokite susijusius įrašus."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Plokštės, objekto ir dalies paieška." msgstr "Plokštės, objekto ir dalies paieška."
msgid "Pellets" msgid "Pellets"
msgstr "Granulės" msgstr "Granulės"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Mišri gija turi sugadintų komponentų nuorodų"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Redaguoti / Ištrinti / Sujungti"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Paskirties mišri gija naudoja šią fizinę giją kaip komponentą. Sujungus ši fizinė gija bus pašalinta ir mišri gija gali tapti netinkama. Tęsti?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Baigus šią operaciją, projektas „%s“ bus uždarytas ir bus sukurtas naujas projektas." msgstr "Baigus šią operaciją, projektas „%s“ bus uždarytas ir bus sukurtas naujas projektas."
@@ -8110,7 +8159,13 @@ msgstr "Patvirtinkite, kad šiuose profiliuose esantis G-kodas yra saugus, kad i
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Pritaikytas profilis" msgstr "Pritaikytas profilis"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Komponentų pavadinimai STEP faile nėra UTF-8 formato!" msgstr "Komponentų pavadinimai STEP faile nėra UTF-8 formato!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -8132,7 +8187,7 @@ msgstr "Objekto tūris nulinis"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Objektas iš failo „%s“ yra per mažas ir galimai nurodytas metrais arba coliais.\n" "Objektas iš failo „%s“ yra per mažas ir galimai nurodytas metrais arba coliais.\n"
"Ar norite mastelį pakeisti į milimetrus?" "Ar norite mastelį pakeisti į milimetrus?"
@@ -8152,6 +8207,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Aptiktas kelių dalių objektas" msgstr "Aptiktas kelių dalių objektas"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Tekstūros priskiriamos gijoms"
# AI Translated
msgid "Texture Import Warning"
msgstr "Tekstūros importavimo įspėjimas"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Ar įkelti šiuos failus kaip vieną objektą su keliomis detalėmis?\n" msgstr "Ar įkelti šiuos failus kaip vieną objektą su keliomis detalėmis?\n"
@@ -8366,6 +8429,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Sinchronizuoti dabar" msgstr "Sinchronizuoti dabar"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Tekstūros importuoti nepavyko. Panašu, kad modelyje yra tekstūros duomenų, tačiau importavimo proceso nepavyko užbaigti. Modelis bus importuotas tik kaip geometrija."
# AI Translated
msgid "Applying texture colors..."
msgstr "Taikomos tekstūros spalvos..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Atnaujinamas 3D vaizdas..."
# AI Translated
msgid "Texture colors applied."
msgstr "Tekstūros spalvos pritaikytos."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Pakeistus profilius galite išsaugoti naujam projektui arba juos atmesti" msgstr "Pakeistus profilius galite išsaugoti naujam projektui arba juos atmesti"
@@ -8497,6 +8576,17 @@ msgstr "Išsaugoti susluoksniuotą failą kaip:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Failas %s išsiųstas į spausdintuvo laikmeną ir gali būti peržiūrimas spausdintuve." msgstr "Failas %s išsiųstas į spausdintuvo laikmeną ir gali būti peržiūrimas spausdintuve."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Talpinti"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Purkštuko tipas nenustatytas. Nustatykite purkštuką ir bandykite dar kartą." msgstr "Purkštuko tipas nenustatytas. Nustatykite purkštuką ir bandykite dar kartą."
@@ -9595,6 +9685,10 @@ msgstr "Spiralinė vaza"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Pirmojo sluoksnio gijos eiga" msgstr "Pirmojo sluoksnio gijos eiga"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Gijų sąraše yra mišrių gijų. Pasirinktinė gijų seka nebus taikoma."
msgid "By Layer" msgid "By Layer"
msgstr "Pagal sluoksnį" msgstr "Pagal sluoksnį"
@@ -9622,9 +9716,6 @@ msgstr "Pereiti į modelio talpinimo interneto puslapį"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Pastaba: paruošimas gali užtrukti kelias minutes. Būkite kantrūs." msgstr "Pastaba: paruošimas gali užtrukti kelias minutes. Būkite kantrūs."
msgid "Publish"
msgstr "Talpinti"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Publikavimas buvo atšauktas" msgstr "Publikavimas buvo atšauktas"
@@ -9640,6 +9731,64 @@ msgstr "Įkeliami duomenys"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Pereiti į interneto puslapį" msgstr "Pereiti į interneto puslapį"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Išsaugoti %s kaip" msgstr "Išsaugoti %s kaip"
@@ -10981,11 +11130,11 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Nereikia kopijuoti jokių modifikacijų" msgstr "Nereikia kopijuoti jokių modifikacijų"
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Kopijuoti parametrus" msgstr "Kopijuoti parametrus"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Modifikuoti %s parametrus" msgstr "Modifikuoti %s parametrus"
#, c-format, boost-format #, c-format, boost-format
@@ -11498,27 +11647,6 @@ msgstr "Išmetimo tūris keičiant gijas"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Pasirinkite gijos spalvą" msgstr "Pasirinkite gijos spalvą"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Tiesioginei „Native Wayland“ peržiūrai reikalingas „GStreamer GTK“ vaizdo sinchronizatorius (video sink). Įdiekite „GStreamer“ skirtą „gtksink“ papildinį, tada iš naujo paleiskite „OrcaSlicer“."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Nepavyko inicijuoti „native Wayland GStreamer“ vaizdo sinchronizatoriaus (video sink). Patikrinkite „GStreamer GTK“ papildinio įdiegimą."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Šiai užduočiai atlikti reikalingas \"Windows Media Player\"! Ar norite įjungti \"Windows Media Player\" savo operacinėje sistemoje?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "„BambuSource“ neteisingai užregistruotas medijos atkūrimui! Paspauskite „Taip“, kad jį perregistruotumėte. Jums reikės patvirtinti du kartus."
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Trūksta BambuSource komponento, užregistruoto medijos atkūrimui! Iš naujo įdiekite OrcaSlicer arba kreipkitės pagalbos į bendruomenę."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Naudojant \"BambuSource\" iš kito diegimo šaltinio, vaizdo įrašų atkūrimas gali būti neteisingas! Paspauskite Taip, kad tai ištaisytumėte."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Jūsų sistemoje nėra \"GStreamer\" H.264 kodekų, reikalingų vaizdo įrašams atkurti. (Pabandykite įdiegti gstreamer1.0-plugins-bad arba gstreamer1.0-libav paketus, tada iš naujo paleiskite \"Orca Slicer\")"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Debesies agentas nepasiekiamas. Iš naujo paleiskite „OrcaSlicer“ ir bandykite vėl." msgstr "Debesies agentas nepasiekiamas. Iš naujo paleiskite „OrcaSlicer“ ir bandykite vėl."
@@ -12226,6 +12354,10 @@ msgstr "Jei vis tiek norite spausdinti, galite įjungti šią parinktį skiltyje
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Pagal dabartinius nustatymus nėra išspaudimų." msgstr "Pagal dabartinius nustatymus nėra išspaudimų."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Naudojama mišri gija su gradientu, tačiau 'Mišrios spalvos posluoksnis' yra išjungtas. Gradientas nebus atspausdintas."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Sklandus pakadrinio filmavimo (timelapse) režimas nepalaikomas, kai įjungta spausdinimo seka „pagal objektą“." msgstr "Sklandus pakadrinio filmavimo (timelapse) režimas nepalaikomas, kai įjungta spausdinimo seka „pagal objektą“."
@@ -12262,6 +12394,10 @@ msgstr "Galbūt norėsite sumažinti modelio dydį arba pakeisti esamus spausdin
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Kintamas sluoksnio aukštis nepalaikomas su \" Organinėmis atramomis\"." msgstr "Kintamas sluoksnio aukštis nepalaikomas su \" Organinėmis atramomis\"."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Valymo bokšto gija negali būti mišri gija."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Skirtingo skersmens purkštukai ir skirtingo skersmens gijos gali neveikti gerai, kai įjungtas valymo bokštas. Tai labai eksperimentinė priemonė, todėl elkitės atsargiai." msgstr "Skirtingo skersmens purkštukai ir skirtingo skersmens gijos gali neveikti gerai, kai įjungtas valymo bokštas. Tai labai eksperimentinė priemonė, todėl elkitės atsargiai."
@@ -12609,7 +12745,7 @@ msgstr "mm arba %"
msgid "Other layers" msgid "Other layers"
msgstr "Kiti sluoksniai" msgstr "Kiti sluoksniai"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant „Cool Plate SuperTack“ pagrindo." msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant „Cool Plate SuperTack“ pagrindo."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13962,6 +14098,8 @@ msgstr "Sluoksnio laikas"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Detalės aušinimo ventiliatorius bus suaktyvintas tiems sluoksniams, kurių preliminarus spausdinimo laikas yra trumpesnis už šią reikšmę. Ventiliatoriaus sūkiai bus interpoliuojami tarp minimalaus ir maksimalaus greičio, priklausomai nuo sluoksnio spausdinimo trukmės." msgstr "Detalės aušinimo ventiliatorius bus suaktyvintas tiems sluoksniams, kurių preliminarus spausdinimo laikas yra trumpesnis už šią reikšmę. Ventiliatoriaus sūkiai bus interpoliuojami tarp minimalaus ir maksimalaus greičio, priklausomai nuo sluoksnio spausdinimo trukmės."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14269,6 +14407,62 @@ msgstr "Atramų gija"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Atramų gija paprastai naudojama atramoms ir atramų skiriamiesiems sluoksniams spausdinti." msgstr "Atramų gija paprastai naudojama atramoms ir atramų skiriamiesiems sluoksniams spausdinti."
# AI Translated
msgid "Is mixed filament"
msgstr "Yra mišri gija"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Nurodo, ar ši gijos vieta yra mišri gija, sudaryta iš kelių fizinių gijų"
# AI Translated
msgid "Mixed filament components"
msgstr "Mišrios gijos komponentai"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Kableliais atskirti komponentinių gijų indeksai, skaičiuojami nuo 1, pvz. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Mišrios gijos posluoksnių santykiai"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Kableliais atskirtos santykio reikšmės, kurių suma lygi 1.0, pvz. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Mišrios gijos gradientas"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Įjungia gradiento režimą Z kryptimi mišrios gijos posluoksniams. Įjungus posluoksnių santykiai tarp sluoksnių kinta tiesiškai."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Mišrios gijos gradiento intervalas"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Pirmojo komponento pradinis ir galutinis santykis gradiento režimu. Kableliu atskirta pora, pvz. \"0.10,0.90\" reiškia nuo 10% iki 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Mišrios gijos gradiento kreivė"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Neprivaloma pasirinktinė Photoshop stiliaus kreivė, susiejanti Z eigą su pirmojo komponento santykiu. Užrašoma kaip vertikaliais brūkšniais atskirti valdymo taškai, formatu \"x,y\" (senasis) arba \"x,y,m_in,m_out\", kai reikia nustatyti liestinę (tuščia reikšmė arba \"nan\" reiškia numatytąjį PCHIP). x priklauso [0,1]; y apribojamas iki nustatyto santykių intervalo, pvz. \"0,0.15|0.5,0.50|1,0.85\". Jei palikta tuščia, naudojamas tiesinis gradient_range."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Mišrios gijos gradientas kiekvienai daliai"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Kai gradiento režimas įjungtas, gradientas taikomas kiekvienai surinkimo daliai atskirai, o ne visam surinkimui kaip vienam Z intervalui."
msgid "Filament printable" msgid "Filament printable"
msgstr "Gija tinkama spausdinti" msgstr "Gija tinkama spausdinti"
@@ -15519,6 +15713,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Leidžiama didžiausia Y ašies išvesties jėga" msgstr "Leidžiama didžiausia Y ašies išvesties jėga"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15531,6 +15726,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Įrenginio pagrindo masės apkrova Y ašiai" msgstr "Įrenginio pagrindo masės apkrova Y ašiai"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15839,7 +16035,7 @@ msgstr "Pradžios ir pabaigos taškai, esantys tarp gijos kirpimo zonos ir atlie
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Sumažinti užpildo įtraukimą (Retraction)" msgstr "Sumažinti užpildo įtraukimą (Retraction)"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Neatlikti gijos įtraukimo, kai tuščioji eiga vyksta tik užpildo zonoje. Tokiu atveju gijos varvėjimas (oozing) išorėje bus nematomas. Tai leidžia sumažinti įtraukimų skaičių sudėtingiems modeliams ir sutaupyti spausdinimo laiko, tačiau sulėtina sluoksniavimą bei G-kodo (G-code) generavimą. Pastaba: zonose, kuriose įtraukimas praleidžiamas, „Z-hop“ judesys taip pat neatliekamas." msgstr "Neatlikti gijos įtraukimo, kai tuščioji eiga vyksta tik užpildo zonoje. Tokiu atveju gijos varvėjimas (oozing) išorėje bus nematomas. Tai leidžia sumažinti įtraukimų skaičių sudėtingiems modeliams ir sutaupyti spausdinimo laiko, tačiau sulėtina sluoksniavimą bei G-kodo (G-code) generavimą. Pastaba: zonose, kuriose įtraukimas praleidžiamas, „Z-hop“ judesys taip pat neatliekamas."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16005,7 +16201,7 @@ msgstr "Atitraukimo kiekis po nubraukimo"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Greito atitraukimo ilgis po nubraukimo, atsižvelgiant į atitraukimo ilgį.\n" "Greito atitraukimo ilgis po nubraukimo, atsižvelgiant į atitraukimo ilgį.\n"
@@ -16052,7 +16248,7 @@ msgstr "Kai atitraukimas suaktyvinamas prieš įrankio keitimą, gija atitraukia
msgid "Z-hop height" msgid "Z-hop height"
msgstr "„Z-hop“ (pakėlimo) aukštis" msgstr "„Z-hop“ (pakėlimo) aukštis"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Kaskart atliekant atitraukimą, purkštukas šiek tiek pakeliamas, kad tarp jo ir spaudinio atsirastų tarpas. Tai apsaugo nuo purkštuko užkliudymo už spaudinio judėjimo metu. „Spiralinių“ linijų naudojimas Z ašies kėlimui gali padėti išvengti „tįstančių siūlų“ (angl. \"stringing\")." msgstr "Kaskart atliekant atitraukimą, purkštukas šiek tiek pakeliamas, kad tarp jo ir spaudinio atsirastų tarpas. Tai apsaugo nuo purkštuko užkliudymo už spaudinio judėjimo metu. „Spiralinių“ linijų naudojimas Z ašies kėlimui gali padėti išvengti „tįstančių siūlų“ (angl. \"stringing\")."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17099,6 +17295,14 @@ msgstr ""
"\n" "\n"
"Jei žemiau esančiame nustatyme „Įtraukimo kiekis prieš nuvalymą“ nurodysite reikšmę, perteklinis gijos įtraukimas bus atliktas prieš nuvalymą, kitu atveju po jo." "Jei žemiau esančiame nustatyme „Įtraukimo kiekis prieš nuvalymą“ nurodysite reikšmę, perteklinis gijos įtraukimas bus atliktas prieš nuvalymą, kitu atveju po jo."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Mišrios spalvos posluoksnis"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Įjungia skaidymą į mišrios spalvos posluoksnius. Įjungus sluoksniai, kuriuose yra mišrios spalvos gijų, skaidomi į posluoksnius, kad būtų pasiektas spalvų maišymo efektas."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Valymo bokštelis (angl. \"wiping tower\") gali būti naudojamas likučiams nuo purkštuko nuvalyti ir purkštuko viduje esančiam slėgiui stabilizuoti, siekiant išvengti išvaizdos defektų spausdinant objektus." msgstr "Valymo bokštelis (angl. \"wiping tower\") gali būti naudojamas likučiams nuo purkštuko nuvalyti ir purkštuko viduje esančiam slėgiui stabilizuoti, siekiant išvengti išvaizdos defektų spausdinant objektus."
@@ -18182,6 +18386,10 @@ msgstr "Nepavyko suformuoti modelio failo poligonažo arba jame nėra tinkamos g
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Pateikto failo nepavyko nuskaityti, nes jis yra tuščias." msgstr "Pateikto failo nepavyko nuskaityti, nes jis yra tuščias."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Failo formatas nesuderinamas ir jo nepavyksta perskaityti."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Nežinomas failo formatas: įvesties failas privalo turėti .stl, .obj arba .amf(.xml) plėtinį." msgstr "Nežinomas failo formatas: įvesties failas privalo turėti .stl, .obj arba .amf(.xml) plėtinį."
@@ -19649,19 +19857,19 @@ msgstr "Rodomi tik tie spausdintuvai, kurių spausdintuvo, kaitinamojo siūlo ir
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Rodyti tik tuos gijų pavadinimus, kurių gijos profiliai buvo pakeisti." msgstr "Rodyti tik tuos gijų pavadinimus, kurių gijos profiliai buvo pakeisti."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Bus rodomi tik tie spausdintuvų pavadinimai, kurie turi naudotojo sukurtų profilių, o kiekvienas pasirinktas profilis bus eksportuotas kaip ZIP failas." msgstr "Bus rodomi tik tie spausdintuvų pavadinimai, kurie turi naudotojo sukurtų profilių, o kiekvienas pasirinktas profilis bus eksportuotas kaip ZIP failas."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Bus rodomi tik tie gijų pavadinimai, kurie turi naudotojo sukurtų profilių, \n" "Bus rodomi tik tie gijų pavadinimai, kurie turi naudotojo sukurtų profilių, \n"
"o visi pasirinkto pavadinimo naudotojo gijos profiliai bus eksportuoti kaip ZIP failas." "o visi pasirinkto pavadinimo naudotojo gijos profiliai bus eksportuoti kaip ZIP failas."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Bus rodomi tik tie spausdintuvų pavadinimai, kurie turi pakeistų proceso profilių, \n" "Bus rodomi tik tie spausdintuvų pavadinimai, kurie turi pakeistų proceso profilių, \n"
"o visi pasirinkto spausdintuvo naudotojo proceso profiliai bus eksportuoti kaip ZIP failas." "o visi pasirinkto spausdintuvo naudotojo proceso profiliai bus eksportuoti kaip ZIP failas."
@@ -19891,7 +20099,7 @@ msgstr "Kopijuoti sistemos informaciją į iškarpinę"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Mums reikia informacijos problemos šaltiniui diagnozuoti. Išsamų vadovą rasite „Wiki“ puslapyje." msgstr "Mums reikia informacijos problemos šaltiniui diagnozuoti. Išsamų vadovą rasite „Wiki“ puslapyje."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Mygtukas „Supakuoti“ (Pack) surenka projekto failą ir dabartinės sesijos žurnalus į ZIP failą." msgstr "Mygtukas „Supakuoti“ (Pack) surenka projekto failą ir dabartinės sesijos žurnalus į ZIP failą."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -19933,7 +20141,7 @@ msgstr "Žurnalo lygis"
msgid "Stored logs" msgid "Stored logs"
msgstr "Saugomi žurnalai" msgstr "Saugomi žurnalai"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Supakuoja visus saugomus žurnalus į ZIP failą." msgstr "Supakuoja visus saugomus žurnalus į ZIP failą."
msgid "Profiles" msgid "Profiles"
@@ -20000,7 +20208,7 @@ msgstr "Spausdintuvo tipas nerastas, pasirinkite rankiniu būdu."
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Autorizuojama..." msgstr "Autorizuojama..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Klaida. Nepavyko gauti API žetono (token) autorizacijai" msgstr "Klaida. Nepavyko gauti API žetono (token) autorizacijai"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20448,8 +20656,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Įjungti išmanųjį gijos priskyrimą: priskirkite vieną giją keliems purkštukams, kad sutaupytumėte kuo daugiau" msgstr "Įjungti išmanųjį gijos priskyrimą: priskirkite vieną giją keliems purkštukams, kad sutaupytumėte kuo daugiau"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Gijos taupymas" msgstr "Failo įrašymas"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Daugiau neberodyti šio priminimo" msgstr "Daugiau neberodyti šio priminimo"
@@ -20735,6 +20943,15 @@ msgstr "Šio veiksmo atšaukti nebus galima. Tęsti?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Praleidžiami objektai." msgstr "Praleidžiami objektai."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Pasirinkti giją" msgstr "Pasirinkti giją"
@@ -20814,6 +21031,9 @@ msgstr "Paleisti iš naujo dabar"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "VISIŠKAI NENAUDOTI SUTANKINIMO" msgstr "VISIŠKAI NENAUDOTI SUTANKINIMO"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Tūrinis greitis" msgstr "Tūrinis greitis"
@@ -21436,6 +21656,39 @@ msgstr ""
"Venkite deformacijų (warping)\n" "Venkite deformacijų (warping)\n"
"Ar žinojote, kad spausdinant medžiagas, kurios yra linkusios trauktis ir riestis (pvz., ABS), tinkamas kaitinamojo pagrindo temperatūros padidinimas gali sumažinti deformacijų (warping) tikimybę?" "Ar žinojote, kad spausdinant medžiagas, kurios yra linkusios trauktis ir riestis (pvz., ABS), tinkamas kaitinamojo pagrindo temperatūros padidinimas gali sumažinti deformacijų (warping) tikimybę?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Tiesioginei „Native Wayland“ peržiūrai reikalingas „GStreamer GTK“ vaizdo sinchronizatorius (video sink). Įdiekite „GStreamer“ skirtą „gtksink“ papildinį, tada iš naujo paleiskite „OrcaSlicer“."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Nepavyko inicijuoti „native Wayland GStreamer“ vaizdo sinchronizatoriaus (video sink). Patikrinkite „GStreamer GTK“ papildinio įdiegimą."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Šiai užduočiai atlikti reikalingas \"Windows Media Player\"! Ar norite įjungti \"Windows Media Player\" savo operacinėje sistemoje?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "„BambuSource“ neteisingai užregistruotas medijos atkūrimui! Paspauskite „Taip“, kad jį perregistruotumėte. Jums reikės patvirtinti du kartus."
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Trūksta BambuSource komponento, užregistruoto medijos atkūrimui! Iš naujo įdiekite OrcaSlicer arba kreipkitės pagalbos į bendruomenę."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Naudojant \"BambuSource\" iš kito diegimo šaltinio, vaizdo įrašų atkūrimas gali būti neteisingas! Paspauskite Taip, kad tai ištaisytumėte."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Jūsų sistemoje nėra \"GStreamer\" H.264 kodekų, reikalingų vaizdo įrašams atkurti. (Pabandykite įdiegti gstreamer1.0-plugins-bad arba gstreamer1.0-libav paketus, tada iš naujo paleiskite \"Orca Slicer\")"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Gijos taupymas"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"
@@ -22206,20 +22459,12 @@ msgstr ""
#~ msgid "Please correct them in the param tabs" #~ msgid "Please correct them in the param tabs"
#~ msgstr "Prašome juos ištaisyti parametrų skirtukuose" #~ msgstr "Prašome juos ištaisyti parametrų skirtukuose"
#~ msgid "Name of components inside STEP file is not UTF8 format!" #~ msgid "Name of components inside STEP file is not UTF-8 format!"
#~ msgstr "Komponentų pavadinimai STEP faile nėra UTF-8 formato!" #~ msgstr "Komponentų pavadinimai STEP faile nėra UTF-8 formato!"
#~ msgid "The name may show garbage characters!" #~ msgid "The name may show garbage characters!"
#~ msgstr "Pavadinimas gali rodyti neskaitomus simbolius!" #~ msgstr "Pavadinimas gali rodyti neskaitomus simbolius!"
#, c-format, boost-format
#~ msgid ""
#~ "The object from file %s is too small, and maybe in meters or inches.\n"
#~ " Do you want to scale to millimeters?"
#~ msgstr ""
#~ "Objektas iš failo „%s“ yra per mažas ir galimai nurodytas metrais arba coliais.\n"
#~ "Ar norite mastelį pakeisti į milimetrus?"
#~ msgid "" #~ msgid ""
#~ "This file contains several objects positioned at multiple heights.\n" #~ "This file contains several objects positioned at multiple heights.\n"
#~ "Instead of considering them as multiple objects, should \n" #~ "Instead of considering them as multiple objects, should \n"
@@ -22609,21 +22854,6 @@ msgstr ""
#~ msgid "Maximum detour distance for avoiding crossing wall. Don't detour if the detour distance is larger than this value. Detour length could be specified either as an absolute value or as percentage (for example 50%) of a direct travel path. Zero to disable." #~ msgid "Maximum detour distance for avoiding crossing wall. Don't detour if the detour distance is larger than this value. Detour length could be specified either as an absolute value or as percentage (for example 50%) of a direct travel path. Zero to disable."
#~ msgstr "Maksimalus apylankos atstumas sienelių kirtimui išvengti. Apylanka nedaroma, jei jos atstumas viršija šią reikšmę. Apylankos ilgis gali būti nurodomas absoliučia verte arba procentais (pavyzdžiui, 50 %) nuo tiesioginio judėjimo trajektorijos. Įrašius 0 funkcija išjungiama." #~ msgstr "Maksimalus apylankos atstumas sienelių kirtimui išvengti. Apylanka nedaroma, jei jos atstumas viršija šią reikšmę. Apylankos ilgis gali būti nurodomas absoliučia verte arba procentais (pavyzdžiui, 50 %) nuo tiesioginio judėjimo trajektorijos. Įrašius 0 funkcija išjungiama."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate."
#~ msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant šalto pagrindo (Cool Plate)."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Textured Cool Plate."
#~ msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant tekstūruoto šalto pagrindo (Textured Cool Plate)."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Engineering Plate."
#~ msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant inžinerinio pagrindo (Engineering Plate)."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the High Temp Plate."
#~ msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant aukštos temperatūros pagrindo (High Temp Plate)."
#~ msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Textured PEI Plate."
#~ msgstr "Pagrindo temperatūra visiems sluoksniams, išskyrus pirmąjį. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant tekstūruoto PEI pagrindo (Textured PEI Plate)."
#~ msgid "Bed temperature of the first layer. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." #~ msgid "Bed temperature of the first layer. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
#~ msgstr "Pirmojo sluoksnio pagrindo temperatūra. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant „Cool Plate SuperTack“ pagrindo." #~ msgstr "Pirmojo sluoksnio pagrindo temperatūra. Reikšmė 0 reiškia, kad ši gija nepritaikyta spausdinti ant „Cool Plate SuperTack“ pagrindo."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
@@ -3197,6 +3197,10 @@ msgstr "Bewerken"
msgid "Merge with" msgid "Merge with"
msgstr "Samenvoegen met" msgstr "Samenvoegen met"
# AI Translated
msgid "Decompose Color"
msgstr "Kleur ontleden"
# AI Translated # AI Translated
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Dit filament verwijderen" msgstr "Dit filament verwijderen"
@@ -3519,6 +3523,10 @@ msgstr "Montage"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Onderdelen samenvoegen tot een object" msgstr "Onderdelen samenvoegen tot een object"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Het gebruik van variabele laaghoogte in combinatie met de sublaag met gemengde kleur kan de kwaliteit van de kleurmenging verslechteren."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Lagen toevoegen" msgstr "Lagen toevoegen"
@@ -5217,7 +5225,7 @@ msgstr ""
"De waarde wordt teruggezet naar 0." "De waarde wordt teruggezet naar 0."
# AI Translated # AI Translated
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Afwisselende extra wand werkt niet goed wanneer 'verticale wanddikte waarborgen' op Alles is ingesteld." msgstr "Afwisselende extra wand werkt niet goed wanneer 'verticale wanddikte waarborgen' op Alles is ingesteld."
# AI Translated # AI Translated
@@ -5265,7 +5273,7 @@ msgstr ""
# AI Translated # AI Translated
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height moet kleiner zijn dan layer_height.\n" "seam_slope_start_height moet kleiner zijn dan layer_height.\n"
@@ -5274,7 +5282,7 @@ msgstr ""
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"De vergrendeldiepte moet kleiner zijn dan de huiddiepte.\n" "De vergrendeldiepte moet kleiner zijn dan de huiddiepte.\n"
@@ -5317,6 +5325,9 @@ msgstr ""
"Ja - Pas de instellingen aan en zet de vaas modus automatisch aan\n" "Ja - Pas de instellingen aan en zet de vaas modus automatisch aan\n"
"Nee - Pas de vaas modus deze keer niet toe" "Nee - Pas de vaas modus deze keer niet toe"
msgid "N/A"
msgstr "N/B"
msgid "Printing" msgid "Printing"
msgstr "Printen" msgstr "Printen"
@@ -5853,9 +5864,6 @@ msgstr "Ongeldig patroon. Gebruik N, N#K of een door komma's gescheiden lijst me
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Onjuist formaat. Het Vector formaat wordt verwacht: \"%1%\"" msgstr "Onjuist formaat. Het Vector formaat wordt verwacht: \"%1%\""
msgid "N/A"
msgstr "N/B"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Systeemagenten" msgstr "Systeemagenten"
@@ -6880,6 +6888,12 @@ msgstr "Bewaar project als"
msgid "Save current project as" msgid "Save current project as"
msgstr "Bewaar huidig project als" msgstr "Bewaar huidig project als"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "3MF/STL/STEP/SVG/OBJ/AMF importeren" msgstr "3MF/STL/STEP/SVG/OBJ/AMF importeren"
@@ -6887,11 +6901,11 @@ msgid "Load a model"
msgstr "Laad een model" msgstr "Laad een model"
# AI Translated # AI Translated
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "ZIP-archief importeren" msgstr "ZIP-archief importeren"
# AI Translated # AI Translated
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Laad modellen uit een ZIP-archief" msgstr "Laad modellen uit een ZIP-archief"
msgid "Import Configs" msgid "Import Configs"
@@ -8552,6 +8566,10 @@ msgstr "Huidig printbed aanpassen"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Het %s-mondstuk kan %s niet printen." msgstr "Het %s-mondstuk kan %s niet printen."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Het printen van filament met gemengde kleur op een printer met één extruder vereist frequente filamentwissels en spoelbeurten, wat het afval en het risico op verstopping van het mondstuk of de afvalgoot aanzienlijk kan vergroten."
# AI Translated # AI Translated
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
@@ -8695,6 +8713,26 @@ msgstr "Synchroniseer filamentlijst vanuit AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Stel filamenten in om te gebruiken" msgstr "Stel filamenten in om te gebruiken"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Gemengd filament toevoegen"
# AI Translated
msgid "Mixed Filament"
msgstr "Gemengd filament"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Laatste gemengde filament verwijderen"
# AI Translated
msgid "Add mixed filament"
msgstr "Gemengd filament toevoegen"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Het gemengde filament bevat ongeldige of niet-overeenkomende componenten. Bewerk de betrokken items opnieuw."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Zoek plaat, object en onderdeel." msgstr "Zoek plaat, object en onderdeel."
@@ -8702,6 +8740,18 @@ msgstr "Zoek plaat, object en onderdeel."
msgid "Pellets" msgid "Pellets"
msgstr "Pellets" msgstr "Pellets"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Het gemengde filament bevat ongeldige componentverwijzingen"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Bewerken / Verwijderen / Samenvoegen"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Het gemengde doelfilament gebruikt dit fysieke filament als component. Bij het samenvoegen wordt dit fysieke filament verwijderd en kan het gemengde filament ongeldig worden. Doorgaan?"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
@@ -8860,8 +8910,14 @@ msgstr "Controleer of de G-codes in deze presets veilig zijn om schade aan de ma
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Aangepaste voorinstelling" msgstr "Aangepaste voorinstelling"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Naam van componenten in step-bestand is niet UTF8-formaat!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Naam van componenten in step-bestand is niet UTF-8-formaat!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "Vanwege niet-ondersteunde tekstcodering kunnen er onjuiste tekens verschijnen!" msgstr "Vanwege niet-ondersteunde tekstcodering kunnen er onjuiste tekens verschijnen!"
@@ -8883,10 +8939,10 @@ msgstr "Het volume van het object is 0"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Het object uit bestand %s is erg klein, en misschien in meters of inches.\n" "Het object uit bestand %s is erg klein, en misschien in meters of inches.\n"
" Wil je schalen naar millimeters?" "Wil je schalen naar millimeters?"
msgid "Object too small" msgid "Object too small"
msgstr "He tobject is te klein" msgstr "He tobject is te klein"
@@ -8903,6 +8959,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Object met meerdere onderdelen gedetecteerd" msgstr "Object met meerdere onderdelen gedetecteerd"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Texturen aan filamenten koppelen"
# AI Translated
msgid "Texture Import Warning"
msgstr "Waarschuwing bij importeren van textuur"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Wilt u deze bestanden laden als een enkel object bestaande uit meerdere onderdelen?\n" msgstr "Wilt u deze bestanden laden als een enkel object bestaande uit meerdere onderdelen?\n"
@@ -9134,6 +9198,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Nu synchroniseren" msgstr "Nu synchroniseren"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Het importeren van de textuur is mislukt. Het model lijkt textuurgegevens te bevatten, maar het importproces kon niet worden voltooid. Het model wordt alleen als geometrie geïmporteerd."
# AI Translated
msgid "Applying texture colors..."
msgstr "Textuurkleuren toepassen..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3D-weergave bijwerken..."
# AI Translated
msgid "Texture colors applied."
msgstr "Textuurkleuren toegepast."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Je kunt de aangepaste voorinstellingen bewaren voor het nieuwe project of ze laten vervallen" msgstr "Je kunt de aangepaste voorinstellingen bewaren voor het nieuwe project of ze laten vervallen"
@@ -9271,6 +9351,17 @@ msgstr "Bewaar het geslicede bestand als:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Het bestand %s is naar de opslagruimte van de printer gestuurd en kan op de printer worden bekeken." msgstr "Het bestand %s is naar de opslagruimte van de printer gestuurd en kan op de printer worden bekeken."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publiceren"
# AI Translated # AI Translated
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Het mondstuktype is niet ingesteld. Stel het mondstuk in en probeer het opnieuw." msgstr "Het mondstuktype is niet ingesteld. Stel het mondstuk in en probeer het opnieuw."
@@ -10527,6 +10618,10 @@ msgstr "Spiraalvaas"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Eerste laag filamentvolgorde" msgstr "Eerste laag filamentvolgorde"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "De filamentlijst bevat gemengde filamenten. De aangepaste filamentvolgorde wordt niet toegepast."
msgid "By Layer" msgid "By Layer"
msgstr "Op laag" msgstr "Op laag"
@@ -10554,9 +10649,6 @@ msgstr "Ga naar de website om het model te publiceren"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Notitie: het voorbereiden kan enkele minuten duren. Even geduld alstublieft." msgstr "Notitie: het voorbereiden kan enkele minuten duren. Even geduld alstublieft."
msgid "Publish"
msgstr "Publiceren"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Het publiceren is geannuleerd" msgstr "Het publiceren is geannuleerd"
@@ -10573,6 +10665,64 @@ msgstr "Gegevens uploaden"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Ga naar de website" msgstr "Ga naar de website"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Bewaar %s als" msgstr "Bewaar %s als"
@@ -12027,12 +12177,12 @@ msgid "No modifications need to be copied."
msgstr "Er hoeven geen wijzigingen te worden gekopieerd." msgstr "Er hoeven geen wijzigingen te worden gekopieerd."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Parameters kopiëren" msgstr "Parameters kopiëren"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Parameters van %s wijzigen" msgstr "Parameters van %s wijzigen"
# AI Translated # AI Translated
@@ -12618,33 +12768,6 @@ msgstr "Volumes reinigen voor filament wijziging"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Kies de filamentkleur" msgstr "Kies de filamentkleur"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Voor de native Wayland-liveview is de GStreamer GTK-videosink nodig. Installeer de gtksink-plug-in voor GStreamer en start OrcaSlicer opnieuw."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Initialiseren van de native Wayland GStreamer-videosink is mislukt. Controleer de installatie van uw GStreamer GTK-plug-in."
# AI Translated
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Voor deze taak is Windows Media Player vereist! Wilt u 'Windows Media Player' inschakelen voor uw besturingssysteem?"
# AI Translated
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource is niet correct geregistreerd voor het afspelen van media! Klik op Ja om het opnieuw te registreren. U krijgt twee keer een melding"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Ontbrekend BambuSource-component geregistreerd voor media afspelen! Installeer OrcaSlicer opnieuw of zoek hulp in de community."
# AI Translated
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Er wordt een BambuSource van een andere installatie gebruikt; het afspelen van video werkt mogelijk niet correct! Klik op Ja om dit te herstellen."
# AI Translated
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Op uw systeem ontbreken H.264-codecs voor GStreamer, die nodig zijn om video af te spelen. (Probeer de pakketten gstreamer1.0-plugins-bad of gstreamer1.0-libav te installeren en Orca Slicer opnieuw te starten.)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "De cloudagent is niet beschikbaar. Start OrcaSlicer opnieuw en probeer het nogmaals." msgstr "De cloudagent is niet beschikbaar. Start OrcaSlicer opnieuw en probeer het nogmaals."
@@ -13410,6 +13533,10 @@ msgstr "Als u toch wilt printen, kunt u de optie inschakelen via Voorkeuren / Be
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Geen extrusion onder de huidige instellingen" msgstr "Geen extrusion onder de huidige instellingen"
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Er wordt een gemengd filament met verloop gebruikt, maar 'Sublaag met gemengde kleur' is uitgeschakeld. Het verloop wordt niet geprint."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Vloeiende modus van timelapse wordt niet ondersteund wanneer \"per object\" sequentie is ingeschakeld." msgstr "Vloeiende modus van timelapse wordt niet ondersteund wanneer \"per object\" sequentie is ingeschakeld."
@@ -13452,6 +13579,10 @@ msgstr "Verklein eventueel uw model of wijzig de huidige printinstellingen en pr
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Variabele laaghoogte wordt niet ondersteund met organische steunen." msgstr "Variabele laaghoogte wordt niet ondersteund met organische steunen."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Het filament van het afveegblok mag geen gemengd filament zijn."
# AI Translated # AI Translated
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Verschillende mondstukdiameters en verschillende filamentdiameters werken mogelijk niet goed wanneer de prime toren is ingeschakeld. Dit is zeer experimenteel; ga daarom voorzichtig te werk." msgstr "Verschillende mondstukdiameters en verschillende filamentdiameters werken mogelijk niet goed wanneer de prime toren is ingeschakeld. Dit is zeer experimenteel; ga daarom voorzichtig te werk."
@@ -13843,14 +13974,12 @@ msgstr "mm of %"
msgid "Other layers" msgid "Other layers"
msgstr "Andere lagen" msgstr "Andere lagen"
# AI Translated msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 betekent dat het filament printen op de Cool Plate SuperTack niet ondersteunt." msgstr "Bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 betekent dat het filament printen op de Cool Plate SuperTack niet ondersteunt."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Dit is de bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 betekent dat het filament het afdrukken op de Cool Plate niet ondersteunt." msgstr "Dit is de bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 betekent dat het filament het afdrukken op de Cool Plate niet ondersteunt."
# AI Translated
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate."
msgstr "Dit is de bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 betekent dat het filament printen op de Textured Cool Plate niet ondersteunt." msgstr "Dit is de bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 betekent dat het filament printen op de Textured Cool Plate niet ondersteunt."
@@ -15365,6 +15494,8 @@ msgstr "Laag tijd"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "De printkop ventilator wordt ingeschakeld voor lagen waarvan de geschatte printtijd korter is dan deze waarde. Ventilatorsnelheid wordt geïnterpoleerd tussen de minimale en maximale ventilatorsnelheden volgens de printtijd van de laag" msgstr "De printkop ventilator wordt ingeschakeld voor lagen waarvan de geschatte printtijd korter is dan deze waarde. Ventilatorsnelheid wordt geïnterpoleerd tussen de minimale en maximale ventilatorsnelheden volgens de printtijd van de laag"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -15724,6 +15855,62 @@ msgstr "Support materiaal"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Support materiaal wordt vaak gebruikt om support en support interfaces af te drukken." msgstr "Support materiaal wordt vaak gebruikt om support en support interfaces af te drukken."
# AI Translated
msgid "Is mixed filament"
msgstr "Is gemengd filament"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Geeft aan of dit filamentslot een gemengd filament is dat uit meerdere fysieke filamenten bestaat"
# AI Translated
msgid "Mixed filament components"
msgstr "Componenten van gemengd filament"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Door komma's gescheiden indexen van de componentfilamenten, beginnend bij 1, bijv. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Sublaagverhoudingen van gemengd filament"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Door komma's gescheiden verhoudingswaarden die samen 1.0 zijn, bijv. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Verloop van gemengd filament"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Schakelt de verloopmodus in Z-richting in voor de sublagen van gemengd filament. Wanneer ingeschakeld variëren de sublaagverhoudingen lineair over de lagen."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Verloopbereik van gemengd filament"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Begin- en eindverhouding van de eerste component in de verloopmodus. Door een komma gescheiden paar, bijv. \"0.10,0.90\" betekent 10% tot 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Verloopcurve van gemengd filament"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Optionele aangepaste curve in Photoshop-stijl die de Z-voortgang koppelt aan de verhouding van de eerste component. Gecodeerd als door verticale strepen gescheiden controlepunten, in de vorm \"x,y\" (verouderd) of \"x,y,m_in,m_out\" wanneer de raaklijn moet worden overschreven (een lege waarde of \"nan\" gebruikt de PCHIP-standaard). x ligt in [0,1]; y wordt begrensd tot het ingestelde verhoudingsbereik, bijv. \"0,0.15|0.5,0.50|1,0.85\". Wanneer het veld leeg is, wordt het lineaire gradient_range gebruikt."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Verloop per onderdeel van gemengd filament"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Wanneer de verloopmodus is ingeschakeld, wordt het verloop op elk onderdeel van een montage afzonderlijk toegepast in plaats van de hele montage als één Z-bereik te behandelen."
# AI Translated # AI Translated
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament printbaar" msgstr "Filament printbaar"
@@ -17162,6 +17349,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "De maximaal toegestane uitgangskracht van de Y-as" msgstr "De maximaal toegestane uitgangskracht van de Y-as"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -17172,6 +17360,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "De massabelasting van het machinebed op de Y-as" msgstr "De massabelasting van het machinebed op de Y-as"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -17510,8 +17699,8 @@ msgid "Reduce infill retraction"
msgstr "Reduceer terugtrekken (retraction) bij vulling (infill)" msgstr "Reduceer terugtrekken (retraction) bij vulling (infill)"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Trek niet terug als de beweging zich volledig in een opvulgebied bevindt. Dat betekent dat het sijpelen niet zichtbaar is. Dit kan de retraction times voor complexe modellen verkorten en printtijd besparen, maar het segmenteren en het genereren van G-codes langzamer maken. Let op: z-hop wordt ook niet uitgevoerd in gebieden waar het terugtrekken wordt overgeslagen." msgstr "Trek niet terug als de beweging zich volledig in een opvulgebied bevindt. Dat betekent dat het sijpelen niet zichtbaar is. Dit kan de retraction times voor complexe modellen verkorten en printtijd besparen, maar het segmenteren en het genereren van G-codes langzamer maken. Let op: Z-hop wordt ook niet uitgevoerd in gebieden waar het terugtrekken wordt overgeslagen."
# AI Translated # AI Translated
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -17700,7 +17889,7 @@ msgstr "Terugtrekhoeveelheid na vegen"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"De lengte van de snelle terugtrekking na het vegen, relatief ten opzichte van de terugtreklengte.\n" "De lengte van de snelle terugtrekking na het vegen, relatief ten opzichte van de terugtreklengte.\n"
@@ -17754,7 +17943,7 @@ msgstr "Wanneer het terugtrekken vóór een gereedschapswissel wordt geactiveerd
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z-hop-hoogte" msgstr "Z-hop-hoogte"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Wanneer er een terugtrekking (retraction) is, wordt het mondstuk een beetje opgetild om ruimte te creëren tussen het mondstuk en de print. Dit voorkomt dat het mondstuk de print raakt bij verplaatsen. Het gebruik van spiraallijnen om Z op te tillen kan stringing voorkomen." msgstr "Wanneer er een terugtrekking (retraction) is, wordt het mondstuk een beetje opgetild om ruimte te creëren tussen het mondstuk en de print. Dit voorkomt dat het mondstuk de print raakt bij verplaatsen. Het gebruik van spiraallijnen om Z op te tillen kan stringing voorkomen."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -18947,6 +19136,14 @@ msgstr ""
"\n" "\n"
"Als u hieronder een waarde instelt bij de terugtrekhoeveelheid vóór het vegen, wordt de overtollige terugtrekking vóór het vegen uitgevoerd; anders gebeurt dat erna." "Als u hieronder een waarde instelt bij de terugtrekhoeveelheid vóór het vegen, wordt de overtollige terugtrekking vóór het vegen uitgevoerd; anders gebeurt dat erna."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Sublaag met gemengde kleur"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Schakelt het opsplitsen in sublagen met gemengde kleur in. Wanneer ingeschakeld worden lagen die filamenten met gemengde kleur bevatten opgesplitst in sublagen om kleurmengeffecten te bereiken."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "De veegtoren kan worden gebruikt om resten op het mondstuk te verwijderen en de druk in het mondstuk te stabiliseren om uiterlijke gebreken bij het printen van objecten te voorkomen." msgstr "De veegtoren kan worden gebruikt om resten op het mondstuk te verwijderen en de druk in het mondstuk te stabiliseren om uiterlijke gebreken bij het printen van objecten te voorkomen."
@@ -19764,7 +19961,7 @@ msgid "Allow 3MF with newer version to be sliced."
msgstr "Sta toe dat een 3MF met een nieuwere versie wordt geslicet." msgstr "Sta toe dat een 3MF met een nieuwere versie wordt geslicet."
msgid "Current Z-hop" msgid "Current Z-hop"
msgstr "Huidige z-hop" msgstr "Huidige Z-hop"
# AI Translated # AI Translated
msgid "Contains Z-hop present at the beginning of the custom G-code block." msgid "Contains Z-hop present at the beginning of the custom G-code block."
@@ -20213,6 +20410,10 @@ msgstr "Het meshen van een modelbestand is mislukt of er is geen geldige vorm."
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Het opgegeven bestand kon niet worden gelezen omdat het leeg is." msgstr "Het opgegeven bestand kon niet worden gelezen omdat het leeg is."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "De bestandsindeling is niet compatibel en kan niet worden gelezen."
# AI Translated # AI Translated
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Onbekende bestandsindeling: het invoerbestand moet de extensie .stl, .obj of .amf(.xml) hebben." msgstr "Onbekende bestandsindeling: het invoerbestand moet de extensie .stl, .obj of .amf(.xml) hebben."
@@ -21801,19 +22002,19 @@ msgstr "Alleen printers met wijzigingen in printer-, filament- en proces presets
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Geef alleen de filamentnamen weer met wijzigingen in filament presets." msgstr "Geef alleen de filamentnamen weer met wijzigingen in filament presets."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Alleen printernamen met gebruikersprinter presets worden weergegeven en elke preset die je kiest, wordt als zip geëxporteerd." msgstr "Alleen printernamen met gebruikersprinter presets worden weergegeven en elke preset die je kiest, wordt als zip geëxporteerd."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Alleen de filamentnamen met gebruikers presets worden weergegeven, \n" "Alleen de filamentnamen met gebruikers presets worden weergegeven, \n"
"en alle gebruikers presets in elke filamentnaam die u selecteert, worden geëxporteerd als zip-bestand." "en alle gebruikers presets in elke filamentnaam die u selecteert, worden geëxporteerd als zip-bestand."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Alleen printernamen met gewijzigde proces presets worden weergegeven, \n" "Alleen printernamen met gewijzigde proces presets worden weergegeven, \n"
"en alle gebruikersproces presets in elke printernaam die u selecteert, worden als zip geëxporteerd." "en alle gebruikersproces presets in elke printernaam die u selecteert, worden als zip geëxporteerd."
@@ -22068,7 +22269,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "We hebben informatie nodig om de oorzaak van het probleem te achterhalen. Raadpleeg de wikipagina voor een uitgebreide handleiding." msgstr "We hebben informatie nodig om de oorzaak van het probleem te achterhalen. Raadpleeg de wikipagina voor een uitgebreide handleiding."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "De knop Inpakken verzamelt het projectbestand en de logboeken van de huidige sessie in een zipbestand." msgstr "De knop Inpakken verzamelt het projectbestand en de logboeken van de huidige sessie in een zipbestand."
# AI Translated # AI Translated
@@ -22124,7 +22325,7 @@ msgid "Stored logs"
msgstr "Opgeslagen logboeken" msgstr "Opgeslagen logboeken"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Pakt alle opgeslagen logboeken in een zipbestand." msgstr "Pakt alle opgeslagen logboeken in een zipbestand."
# AI Translated # AI Translated
@@ -22212,7 +22413,7 @@ msgid "Authorizing..."
msgstr "Autoriseren..." msgstr "Autoriseren..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Fout. Kan geen API-token voor autorisatie ophalen" msgstr "Fout. Kan geen API-token voor autorisatie ophalen"
# AI Translated # AI Translated
@@ -22761,8 +22962,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Slimme filamenttoewijzing inschakelen: wijs één filament aan meerdere mondstukken toe om de besparing te maximaliseren" msgstr "Slimme filamenttoewijzing inschakelen: wijs één filament aan meerdere mondstukken toe om de besparing te maximaliseren"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Filamentbesparing" msgstr "Bestand opslaan"
# AI Translated # AI Translated
msgid "Don't remind me again" msgid "Don't remind me again"
@@ -23122,6 +23323,15 @@ msgstr "Deze actie kan niet ongedaan worden gemaakt. Doorgaan?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Objecten worden overgeslagen." msgstr "Objecten worden overgeslagen."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Selecteer filament" msgstr "Selecteer filament"
@@ -23217,6 +23427,9 @@ msgstr "Nu opnieuw starten"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "HELEMAAL GEEN RAMMING" msgstr "HELEMAAL GEEN RAMMING"
msgid "s"
msgstr "s"
# AI Translated # AI Translated
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Volumetrische snelheid" msgstr "Volumetrische snelheid"
@@ -23883,6 +24096,45 @@ msgstr ""
"Kromtrekken voorkomen\n" "Kromtrekken voorkomen\n"
"Wist je dat bij het printen van materialen die gevoelig zijn voor kromtrekken, zoals ABS, een juiste verhoging van de temperatuur van het warmtebed de kans op kromtrekken kan verkleinen?" "Wist je dat bij het printen van materialen die gevoelig zijn voor kromtrekken, zoals ABS, een juiste verhoging van de temperatuur van het warmtebed de kans op kromtrekken kan verkleinen?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Voor de native Wayland-liveview is de GStreamer GTK-videosink nodig. Installeer de gtksink-plug-in voor GStreamer en start OrcaSlicer opnieuw."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Initialiseren van de native Wayland GStreamer-videosink is mislukt. Controleer de installatie van uw GStreamer GTK-plug-in."
# AI Translated
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Voor deze taak is Windows Media Player vereist! Wilt u 'Windows Media Player' inschakelen voor uw besturingssysteem?"
# AI Translated
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource is niet correct geregistreerd voor het afspelen van media! Klik op Ja om het opnieuw te registreren. U krijgt twee keer een melding"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Ontbrekend BambuSource-component geregistreerd voor media afspelen! Installeer OrcaSlicer opnieuw of zoek hulp in de community."
# AI Translated
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Er wordt een BambuSource van een andere installatie gebruikt; het afspelen van video werkt mogelijk niet correct! Klik op Ja om dit te herstellen."
# AI Translated
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Op uw systeem ontbreken H.264-codecs voor GStreamer, die nodig zijn om video af te spelen. (Probeer de pakketten gstreamer1.0-plugins-bad of gstreamer1.0-libav te installeren en Orca Slicer opnieuw te starten.)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Filamentbesparing"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OrcaSlicer 2.3.0-rc\n" "Project-Id-Version: OrcaSlicer 2.3.0-rc\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: \n" "PO-Revision-Date: \n"
"Last-Translator: Krzysztof Morga <<tlumaczeniebs@gmail.com>>\n" "Last-Translator: Krzysztof Morga <<tlumaczeniebs@gmail.com>>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -3012,6 +3012,10 @@ msgstr "Edytuj"
msgid "Merge with" msgid "Merge with"
msgstr "Scal z" msgstr "Scal z"
# AI Translated
msgid "Decompose Color"
msgstr "Rozłóż kolor"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Usuń ten filament" msgstr "Usuń ten filament"
@@ -3319,6 +3323,10 @@ msgstr "Złożenie"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Scal części w obiekt" msgstr "Scal części w obiekt"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Użycie zmiennej wysokości warstwy razem z podwarstwą mieszanego koloru może pogorszyć jakość mieszania kolorów."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Dodaj warstwy" msgstr "Dodaj warstwy"
@@ -4907,7 +4915,7 @@ msgstr ""
"\n" "\n"
"Wartość zostanie zresetowana do 0." "Wartość zostanie zresetowana do 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Alternatywna dodatkowa ściana działa tylko wtedy, gdy jest wyłączona opcja „zapewnij stałą grubość pionowej powłoki”." msgstr "Alternatywna dodatkowa ściana działa tylko wtedy, gdy jest wyłączona opcja „zapewnij stałą grubość pionowej powłoki”."
msgid "" msgid ""
@@ -4953,7 +4961,7 @@ msgstr ""
"NIE - Zachowaj Niezależną wysokość warstwy podpory" "NIE - Zachowaj Niezależną wysokość warstwy podpory"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height musi być mniejsza niż wysokość warstwy.\n" "seam_slope_start_height musi być mniejsza niż wysokość warstwy.\n"
@@ -4962,7 +4970,7 @@ msgstr ""
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Głębokość blokady powinna być mniejsza niż głębokość skóry.\n" "Głębokość blokady powinna być mniejsza niż głębokość skóry.\n"
@@ -5005,6 +5013,10 @@ msgstr ""
"Tak - Zmień te ustawienia automatycznie i włącz tryb Wazy\n" "Tak - Zmień te ustawienia automatycznie i włącz tryb Wazy\n"
"Nie - Zrezygnuj tym razem z używania trybu Wazy" "Nie - Zrezygnuj tym razem z używania trybu Wazy"
# AI Translated
msgid "N/A"
msgstr "Nie dotyczy"
msgid "Printing" msgid "Printing"
msgstr "Drukowanie" msgstr "Drukowanie"
@@ -5472,10 +5484,6 @@ msgstr "Nieprawidłowy wzorzec. Użyj N, N#K lub listy rozdzielonej przecinkami
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Nieprawidłowy format. Oczekiwano formatu wektorowego: „%1%”" msgstr "Nieprawidłowy format. Oczekiwano formatu wektorowego: „%1%”"
# AI Translated
msgid "N/A"
msgstr "Nie dotyczy"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Agenci systemowi" msgstr "Agenci systemowi"
@@ -6461,16 +6469,22 @@ msgstr "Zapisz projekt jako"
msgid "Save current project as" msgid "Save current project as"
msgstr "Zapisz bieżący projekt jako" msgstr "Zapisz bieżący projekt jako"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importuj 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importuj 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Wczytaj model" msgstr "Wczytaj model"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importuj archiwum ZIP" msgstr "Importuj archiwum ZIP"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Wczytaj modele zawarte w archiwum ZIP" msgstr "Wczytaj modele zawarte w archiwum ZIP"
msgid "Import Configs" msgid "Import Configs"
@@ -8030,6 +8044,10 @@ msgstr "Dostosuj bieżący stół"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Dysza %s nie może drukować %s." msgstr "Dysza %s nie może drukować %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Drukowanie filamentu o mieszanym kolorze na drukarce z jednym ekstruderem wymaga częstych zmian filamentu i płukania, co może znacznie zwiększyć ilość odpadów oraz ryzyko zatkania dyszy lub rynny na odpady."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Mieszanie %1% z %2% podczas druku nie jest zalecane.\n" msgstr "Mieszanie %1% z %2% podczas druku nie jest zalecane.\n"
@@ -8156,12 +8174,44 @@ msgstr "Synchronizuj listę filamentów z AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Wybierz filamenty do użycia" msgstr "Wybierz filamenty do użycia"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Dodaj filament mieszany"
# AI Translated
msgid "Mixed Filament"
msgstr "Filament mieszany"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Usuń ostatni filament mieszany"
# AI Translated
msgid "Add mixed filament"
msgstr "Dodaj filament mieszany"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Filament mieszany ma nieprawidłowe lub niezgodne składniki. Proszę ponownie edytować odpowiednie pozycje."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Szukaj stołu, obiektu i części." msgstr "Szukaj stołu, obiektu i części."
msgid "Pellets" msgid "Pellets"
msgstr "Granulat" msgstr "Granulat"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Filament mieszany ma uszkodzone odwołania do składników"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Edytuj / Usuń / Scal"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Docelowy filament mieszany używa tego fizycznego filamentu jako składnika. Scalenie usunie ten fizyczny filament i może unieważnić filament mieszany. Kontynuować?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Po zakończeniu operacji projekt %s zostanie zamknięty i zostanie utworzony nowy projekt." msgstr "Po zakończeniu operacji projekt %s zostanie zamknięty i zostanie utworzony nowy projekt."
@@ -8309,8 +8359,14 @@ msgstr "Proszę potwierdź, że G-code w tych profilach jest bezpieczny, aby zap
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Dostosowany profil" msgstr "Dostosowany profil"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Nazwa komponentów w pliku step nie jest w formacie UTF8!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Nazwa komponentów w pliku step nie jest w formacie UTF-8!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "Nazwa może zawierać nieczytelne znaki!" msgstr "Nazwa może zawierać nieczytelne znaki!"
@@ -8331,10 +8387,10 @@ msgstr "Objętość tego obiektu wynosi zero"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Obiekt z pliku %s jest zbyt mały i możliwe, że jest określony w metrach lub calach.\n" "Obiekt z pliku %s jest zbyt mały i możliwe, że jest określony w metrach lub calach.\n"
" Czy przeskalować na milimetry?" "Czy przeskalować na milimetry?"
msgid "Object too small" msgid "Object too small"
msgstr "Zbyt mały obiekt" msgstr "Zbyt mały obiekt"
@@ -8351,6 +8407,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Wykryto obiekt składający się z wielu części" msgstr "Wykryto obiekt składający się z wielu części"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Dopasowywanie tekstur do filamentów"
# AI Translated
msgid "Texture Import Warning"
msgstr "Ostrzeżenie importu tekstury"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Czy wczytać te pliki jako pojedynczy obiekt składający się z wielu części?\n" msgstr "Czy wczytać te pliki jako pojedynczy obiekt składający się z wielu części?\n"
@@ -8579,6 +8643,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Synchronizuj teraz" msgstr "Synchronizuj teraz"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Import tekstury nie powiódł się. Model zdaje się zawierać dane tekstury, ale nie udało się ukończyć procesu importu. Model zostanie zaimportowany wyłącznie jako geometria."
# AI Translated
msgid "Applying texture colors..."
msgstr "Stosowanie kolorów tekstury..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Aktualizowanie widoku 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "Zastosowano kolory tekstury."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Można zachować zmodyfikowane profile w nowym projekcie lub je odrzucić." msgstr "Można zachować zmodyfikowane profile w nowym projekcie lub je odrzucić."
@@ -8711,6 +8791,17 @@ msgstr "Zapisz plik po wykonaniu cięcia jako:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Plik %s został wysłany do pamięci drukarki i można go obejrzeć na urządzeniu." msgstr "Plik %s został wysłany do pamięci drukarki i można go obejrzeć na urządzeniu."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Opublikuj"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Nie ustawiono typu dyszy Wprowadź ustawienia dyszy i spróbuj ponownie." msgstr "Nie ustawiono typu dyszy Wprowadź ustawienia dyszy i spróbuj ponownie."
@@ -9922,6 +10013,10 @@ msgstr "Tryb wazy"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Sekwencja koloru pierwszej warstwy" msgstr "Sekwencja koloru pierwszej warstwy"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Lista filamentów zawiera filamenty mieszane. Niestandardowa kolejność filamentów nie zostanie zastosowana."
msgid "By Layer" msgid "By Layer"
msgstr "Wg warstwy" msgstr "Wg warstwy"
@@ -9949,9 +10044,6 @@ msgstr "Przejdź do strony publikacji modelu"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Uwaga: Przygotowanie może zająć kilka minut. Proszę o cierpliwość." msgstr "Uwaga: Przygotowanie może zająć kilka minut. Proszę o cierpliwość."
msgid "Publish"
msgstr "Opublikuj"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Publikacja została anulowana" msgstr "Publikacja została anulowana"
@@ -9968,6 +10060,64 @@ msgstr "Przesyłanie danych"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Przejdź na stronę" msgstr "Przejdź na stronę"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Zapisz %s jako" msgstr "Zapisz %s jako"
@@ -11363,12 +11513,12 @@ msgid "No modifications need to be copied."
msgstr "Nie ma modyfikacji do skopiowania." msgstr "Nie ma modyfikacji do skopiowania."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Kopiuj parametry" msgstr "Kopiuj parametry"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Zmodyfikuj parametry %s" msgstr "Zmodyfikuj parametry %s"
# AI Translated # AI Translated
@@ -11896,30 +12046,6 @@ msgstr "Objętości płukania przy zmianie filamentu"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Proszę wybrać kolor filamentu" msgstr "Proszę wybrać kolor filamentu"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Natywny podgląd na żywo w Wayland wymaga ujścia wideo GStreamer GTK. Zainstaluj wtyczkę gtksink dla GStreamer, a następnie uruchom ponownie OrcaSlicer."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Nie udało się zainicjować natywnego ujścia wideo GStreamer dla Wayland. Sprawdź instalację wtyczki GStreamer GTK."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Do wykonania tego zadania wymagany jest Windows Media Player! Czy włączyć „Windows Media Player” dla systemu operacyjnego?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource nie został poprawnie zarejestrowany do odtwarzania mediów! Naciśnij Tak, aby ponownie go zarejestrować. Będziesz poproszony dwa razy."
# AI Translated
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Brak zarejestrowanego komponentu BambuSource do odtwarzania multimediów! Zainstaluj ponownie OrcaSlicer lub poszukaj pomocy w społeczności."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Jeśli używasz BambuSource z innej instalacji programu, odtwarzanie wideo może nie działać poprawnie! Naciśnij Tak, aby to naprawić."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Twój system nie posiada kodeków H.264 dla GStreamer, które są wymagane do odtwarzania wideo. (Spróbuj zainstalować pakiety gstreamer1.0-plugins-bad lub gstreamer1.0-libav, a następnie zrestartuj Orca Slicer?)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Agent chmury jest niedostępny. Uruchom ponownie OrcaSlicer i spróbuj jeszcze raz." msgstr "Agent chmury jest niedostępny. Uruchom ponownie OrcaSlicer i spróbuj jeszcze raz."
@@ -12646,6 +12772,10 @@ msgstr "Jeśli mimo to chcesz drukować, możesz włączyć opcję w Preferencje
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Brak ekstruzji przy obecnych ustawieniach." msgstr "Brak ekstruzji przy obecnych ustawieniach."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Używany jest filament mieszany z gradientem, ale opcja 'Podwarstwa mieszanego koloru' jest wyłączona. Gradient nie zostanie wydrukowany."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Tryb „Wygładzony” timelapse nie jest obsługiwany, gdy włączona jest sekwencja druku „według obiektu”." msgstr "Tryb „Wygładzony” timelapse nie jest obsługiwany, gdy włączona jest sekwencja druku „według obiektu”."
@@ -12684,6 +12814,10 @@ msgstr "Może być konieczne zmniejszenie rozmiaru modelu lub zmiana bieżących
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Zmienna wysokość warstwy nie jest dostępna w przypadku podpór organicznych." msgstr "Zmienna wysokość warstwy nie jest dostępna w przypadku podpór organicznych."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Filament wieży czyszczącej nie może być filamentem mieszanym."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Różne średnice dysz i filamentu mogą nie działać poprawnie, gdy włączona jest wieża czyszcząca. Jest to mocno eksperymentalna funkcja, więc zaleca się ostrożność." msgstr "Różne średnice dysz i filamentu mogą nie działać poprawnie, gdy włączona jest wieża czyszcząca. Jest to mocno eksperymentalna funkcja, więc zaleca się ostrożność."
@@ -13060,8 +13194,7 @@ msgstr "mm lub %"
msgid "Other layers" msgid "Other layers"
msgstr "Pozostałe warstwy" msgstr "Pozostałe warstwy"
# AI Translated msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Temperatura stołu dla warstw poza pierwszą. Wartość 0 oznacza, że filament nie obsługuje druku na Cool Plate SuperTack." msgstr "Temperatura stołu dla warstw poza pierwszą. Wartość 0 oznacza, że filament nie obsługuje druku na Cool Plate SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14477,6 +14610,8 @@ msgstr "Czas warstwy"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Wentylator chłodzący części zostanie włączony dla warstw, których szacowany czas jest krótszy niż ta wartość. Prędkość wentylatora jest interpolowana między minimalną a maksymalną prędkością wentylatora zgodnie z czasem druku warstwy" msgstr "Wentylator chłodzący części zostanie włączony dla warstw, których szacowany czas jest krótszy niż ta wartość. Prędkość wentylatora jest interpolowana między minimalną a maksymalną prędkością wentylatora zgodnie z czasem druku warstwy"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14787,6 +14922,62 @@ msgstr "Materiał podporowy"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Materiał podporowy jest powszechnie używany do drukowania podpór i warstw łączących podpory z modelem" msgstr "Materiał podporowy jest powszechnie używany do drukowania podpór i warstw łączących podpory z modelem"
# AI Translated
msgid "Is mixed filament"
msgstr "Jest filamentem mieszanym"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Określa, czy to gniazdo filamentu jest filamentem mieszanym złożonym z kilku fizycznych filamentów"
# AI Translated
msgid "Mixed filament components"
msgstr "Składniki filamentu mieszanego"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Rozdzielone przecinkami indeksy filamentów składowych liczone od 1, np. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Proporcje podwarstw filamentu mieszanego"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Rozdzielone przecinkami wartości proporcji sumujące się do 1.0, np. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Gradient filamentu mieszanego"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Włącza tryb gradientu w kierunku Z dla podwarstw filamentu mieszanego. Po włączeniu proporcje podwarstw zmieniają się liniowo między warstwami."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Zakres gradientu filamentu mieszanego"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Początkowa i końcowa proporcja pierwszego składnika w trybie gradientu. Para rozdzielona przecinkiem, np. \"0.10,0.90\" oznacza od 10% do 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Krzywa gradientu filamentu mieszanego"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Opcjonalna własna krzywa w stylu Photoshopa odwzorowująca postęp w osi Z na proporcję pierwszego składnika. Zapisywana jako punkty kontrolne rozdzielone pionowymi kreskami, w postaci \"x,y\" (starszy format) lub \"x,y,m_in,m_out\", gdy potrzebne jest nadpisanie stycznej (pusta wartość lub \"nan\" oznacza domyślną wartość PCHIP). x należy do [0,1]; y jest ograniczane do skonfigurowanego zakresu proporcji, np. \"0,0.15|0.5,0.50|1,0.85\". Gdy pole jest puste, używany jest liniowy gradient_range."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Gradient filamentu mieszanego dla każdej części"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Gdy tryb gradientu jest włączony, gradient jest stosowany do każdej części złożenia niezależnie, zamiast traktować całe złożenie jako jeden zakres Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament do druku" msgstr "Filament do druku"
@@ -16107,6 +16298,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Dopuszczalna maksymalna siła wyjściowa na osi Y" msgstr "Dopuszczalna maksymalna siła wyjściowa na osi Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -16117,6 +16309,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Obciążenie masowe stołu maszyny na osi Y" msgstr "Obciążenie masowe stołu maszyny na osi Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16448,7 +16641,7 @@ msgstr "Punkty początkowe i końcowe, od obszaru cięcia do kanału wyrzutowego
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Zmniejszanie retrakcji wypełnienia" msgstr "Zmniejszanie retrakcji wypełnienia"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Nie wykonuj retrakcji, gdy ruch odbywa się całkowicie w obszarze wypełnienia. Oznacza to, że wyciek nie będzie widoczny. Może to zmniejszyć liczbę retrakcji dla skomplikowanego modelu i zaoszczędzić czas druku, ale spowolnić krojenie i generowanie G-code" msgstr "Nie wykonuj retrakcji, gdy ruch odbywa się całkowicie w obszarze wypełnienia. Oznacza to, że wyciek nie będzie widoczny. Może to zmniejszyć liczbę retrakcji dla skomplikowanego modelu i zaoszczędzić czas druku, ale spowolnić krojenie i generowanie G-code"
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -16624,7 +16817,7 @@ msgstr "Wartość retrakcji po czyszczeniu"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Długość szybkiej retrakcji po czyszczeniu, względem długości retrakcji.\n" "Długość szybkiej retrakcji po czyszczeniu, względem długości retrakcji.\n"
@@ -16671,7 +16864,7 @@ msgstr "Gdy retrakcja jest wyzwalana przed zmianą narzędzia, filament zostaje
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Wysokość Z-hop" msgstr "Wysokość Z-hop"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Zawsze gdy wykonana jest retrakcja, dysza jest nieco podnoszona, aby stworzyć odstęp między dyszą a wydrukiem. Zapobiega to uderzeniu dyszy w wydruk podczas przemieszczania. Użycie linii spiralnej do podniesienia Z może zapobiec powstawaniu strun" msgstr "Zawsze gdy wykonana jest retrakcja, dysza jest nieco podnoszona, aby stworzyć odstęp między dyszą a wydrukiem. Zapobiega to uderzeniu dyszy w wydruk podczas przemieszczania. Użycie linii spiralnej do podniesienia Z może zapobiec powstawaniu strun"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17757,6 +17950,14 @@ msgstr ""
"\n" "\n"
"Ustawienie wartości w ilości cofania przed ustawieniem czyszczenia poniżej spowoduje wykonanie nadmiernego cofania przed czyszczeniem, w przeciwnym razie zostanie wykonane po nim." "Ustawienie wartości w ilości cofania przed ustawieniem czyszczenia poniżej spowoduje wykonanie nadmiernego cofania przed czyszczeniem, w przeciwnym razie zostanie wykonane po nim."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Podwarstwa mieszanego koloru"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Włącza podział na podwarstwy mieszanego koloru. Po włączeniu warstwy zawierające filamenty o mieszanym kolorze są dzielone na podwarstwy w celu uzyskania efektu mieszania kolorów."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Wieża czyszcząca może być używana do czyszczenia resztek na dyszy i stabilizacji ciśnienia w komorze wewnątrz dyszy, aby uniknąć defektów wyglądu podczas drukowania obiektów." msgstr "Wieża czyszcząca może być używana do czyszczenia resztek na dyszy i stabilizacji ciśnienia w komorze wewnątrz dyszy, aby uniknąć defektów wyglądu podczas drukowania obiektów."
@@ -18504,7 +18705,7 @@ msgid "Current Z-hop"
msgstr "Bieżący Z-hop" msgstr "Bieżący Z-hop"
msgid "Contains Z-hop present at the beginning of the custom G-code block." msgid "Contains Z-hop present at the beginning of the custom G-code block."
msgstr "Zawiera z-hop obecny na początku bloku niestandardowego G-code" msgstr "Zawiera Z-hop obecny na początku bloku niestandardowego G-code"
msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back." msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back."
msgstr "Pozycja ekstrudera na początku bloku niestandardowego G-kodu. Jeśli niestandardowy G-code przemieszcza się gdzieś indziej, powinien zostać zapisany do tej zmiennej, aby OrcaSlicer wiedział, skąd się przemieszcza, gdy odzyska kontrolę." msgstr "Pozycja ekstrudera na początku bloku niestandardowego G-kodu. Jeśli niestandardowy G-code przemieszcza się gdzieś indziej, powinien zostać zapisany do tej zmiennej, aby OrcaSlicer wiedział, skąd się przemieszcza, gdy odzyska kontrolę."
@@ -18858,6 +19059,10 @@ msgstr "Siatkowanie pliku modelu nie powiodło się lub nie ma prawidłowego ksz
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Dostarczony plik nie mógł być odczytany, ponieważ jest pusty" msgstr "Dostarczony plik nie mógł być odczytany, ponieważ jest pusty"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Format pliku jest niezgodny i nie można go odczytać."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Nieznany format pliku. Plik wejściowy musi mieć rozszerzenie .stl, .obj, .amf(.xml)." msgstr "Nieznany format pliku. Plik wejściowy musi mieć rozszerzenie .stl, .obj, .amf(.xml)."
@@ -20394,19 +20599,19 @@ msgstr "Wyświetlane są jedynie drukarki ze zmienionymi profilami drukarki, fil
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Wyświetlone są jedynie nazwy filamentów, które zostały zmodyfikowane w ustawieniach." msgstr "Wyświetlone są jedynie nazwy filamentów, które zostały zmodyfikowane w ustawieniach."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Wyświetlane są tylko nazwy drukarek z ustawieniami użytkownika, wybrany zestaw zostanie wyeksportowany jako plik zip." msgstr "Wyświetlane są tylko nazwy drukarek z ustawieniami użytkownika, wybrany zestaw zostanie wyeksportowany jako plik zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Na liście widoczne są tylko nazwy filamentów ze zmodyfikowanymi ustawieniami, \n" "Na liście widoczne są tylko nazwy filamentów ze zmodyfikowanymi ustawieniami, \n"
"a dla każdej wybranej nazwy filamentu zostaną wyeksportowane wszystkie ustawienia jako archiwum zip." "a dla każdej wybranej nazwy filamentu zostaną wyeksportowane wszystkie ustawienia jako archiwum zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Na liście widoczne są tylko nazwy drukarek ze zmodyfikowanymi ustawieniami procesu, \n" "Na liście widoczne są tylko nazwy drukarek ze zmodyfikowanymi ustawieniami procesu, \n"
"a dla każdej wybranej nazwy drukarki zostaną wyeksportowane wszystkie \n" "a dla każdej wybranej nazwy drukarki zostaną wyeksportowane wszystkie \n"
@@ -20653,7 +20858,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Potrzebujemy informacji do zdiagnozowania źródła problemu. Szczegółowy przewodnik znajdziesz na stronie wiki." msgstr "Potrzebujemy informacji do zdiagnozowania źródła problemu. Szczegółowy przewodnik znajdziesz na stronie wiki."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Przycisk Spakuj zbiera plik projektu i dzienniki bieżącej sesji do pliku zip." msgstr "Przycisk Spakuj zbiera plik projektu i dzienniki bieżącej sesji do pliku zip."
# AI Translated # AI Translated
@@ -20709,7 +20914,7 @@ msgid "Stored logs"
msgstr "Zapisane dzienniki" msgstr "Zapisane dzienniki"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Pakuje wszystkie zapisane dzienniki do pliku zip." msgstr "Pakuje wszystkie zapisane dzienniki do pliku zip."
# AI Translated # AI Translated
@@ -20797,7 +21002,7 @@ msgid "Authorizing..."
msgstr "Autoryzowanie..." msgstr "Autoryzowanie..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Błąd. Nie można uzyskać tokenu API do autoryzacji" msgstr "Błąd. Nie można uzyskać tokenu API do autoryzacji"
# AI Translated # AI Translated
@@ -21259,8 +21464,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Włącz inteligentne przypisywanie filamentu: przypisz jeden filament do wielu dysz, aby zmaksymalizować oszczędności" msgstr "Włącz inteligentne przypisywanie filamentu: przypisz jeden filament do wielu dysz, aby zmaksymalizować oszczędności"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Oszczędność fil." msgstr "Zapisywanie pliku"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Nie przypominaj mi ponownie" msgstr "Nie przypominaj mi ponownie"
@@ -21596,6 +21801,15 @@ msgstr "Tego działania nie będzie można cofnąć. Kontynuować?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Pomijanie obiektów." msgstr "Pomijanie obiektów."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Wybierz filament" msgstr "Wybierz filament"
@@ -21691,6 +21905,9 @@ msgstr "Uruchom ponownie teraz"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "BRAK WYCISKANIA" msgstr "BRAK WYCISKANIA"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Prędkości Przepływu" msgstr "Prędkości Przepływu"
@@ -22336,6 +22553,42 @@ msgstr ""
"Unikaj odkształceń\n" "Unikaj odkształceń\n"
"Czy wiesz, że podczas drukowania filamentami podatnymi na odkształcenia, takimi jak ABS, odpowiednie zwiększenie temperatury podgrzewanej płyty może zmniejszyć prawdopodobieństwo odkształceń?" "Czy wiesz, że podczas drukowania filamentami podatnymi na odkształcenia, takimi jak ABS, odpowiednie zwiększenie temperatury podgrzewanej płyty może zmniejszyć prawdopodobieństwo odkształceń?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Natywny podgląd na żywo w Wayland wymaga ujścia wideo GStreamer GTK. Zainstaluj wtyczkę gtksink dla GStreamer, a następnie uruchom ponownie OrcaSlicer."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Nie udało się zainicjować natywnego ujścia wideo GStreamer dla Wayland. Sprawdź instalację wtyczki GStreamer GTK."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Do wykonania tego zadania wymagany jest Windows Media Player! Czy włączyć „Windows Media Player” dla systemu operacyjnego?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource nie został poprawnie zarejestrowany do odtwarzania mediów! Naciśnij Tak, aby ponownie go zarejestrować. Będziesz poproszony dwa razy."
# AI Translated
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Brak zarejestrowanego komponentu BambuSource do odtwarzania multimediów! Zainstaluj ponownie OrcaSlicer lub poszukaj pomocy w społeczności."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Jeśli używasz BambuSource z innej instalacji programu, odtwarzanie wideo może nie działać poprawnie! Naciśnij Tak, aby to naprawić."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Twój system nie posiada kodeków H.264 dla GStreamer, które są wymagane do odtwarzania wideo. (Spróbuj zainstalować pakiety gstreamer1.0-plugins-bad lub gstreamer1.0-libav, a następnie zrestartuj Orca Slicer?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Oszczędność fil."
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-07-26 11:14-0300\n" "PO-Revision-Date: 2026-07-26 11:14-0300\n"
"Last-Translator: Alexandre Folle de Menezes\n" "Last-Translator: Alexandre Folle de Menezes\n"
"Language-Team: Portuguese, Brazilian\n" "Language-Team: Portuguese, Brazilian\n"
@@ -2836,6 +2836,10 @@ msgstr "Editar"
msgid "Merge with" msgid "Merge with"
msgstr "Mesclar com" msgstr "Mesclar com"
# AI Translated
msgid "Decompose Color"
msgstr "Decompor Cor"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Apagar este filamento" msgstr "Apagar este filamento"
@@ -3118,6 +3122,10 @@ msgstr "Montagem"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Mesclar peças com um objeto" msgstr "Mesclar peças com um objeto"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Usar altura de camada variável junto com a subcamada de cor mista pode resultar em uma mistura de cores de baixa qualidade."
msgid "Add layers" msgid "Add layers"
msgstr "Adicionar camadas" msgstr "Adicionar camadas"
@@ -4641,7 +4649,7 @@ msgstr ""
"\n" "\n"
"O valor será redefinido para 0." "O valor será redefinido para 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "A parede extra alternada não funciona bem quando a espessura vertical da casca está definida para Todos." msgstr "A parede extra alternada não funciona bem quando a espessura vertical da casca está definida para Todos."
msgid "" msgid ""
@@ -4687,7 +4695,7 @@ msgstr ""
"NÃO — Manter a Altura da Camada de Suporte Independente" "NÃO — Manter a Altura da Camada de Suporte Independente"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height precisa ser menor que layer_height.\n" "seam_slope_start_height precisa ser menor que layer_height.\n"
@@ -4695,7 +4703,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"A profundidade do travamento deve ser menor que a profundidade da textura.\n" "A profundidade do travamento deve ser menor que a profundidade da textura.\n"
@@ -4735,6 +4743,9 @@ msgstr ""
"Sim - Alterar essas configurações e ativar o modo espiral/vaso automaticamente\n" "Sim - Alterar essas configurações e ativar o modo espiral/vaso automaticamente\n"
"Não - Cancelar ativação do modo espiral" "Não - Cancelar ativação do modo espiral"
msgid "N/A"
msgstr "N/D"
msgid "Printing" msgid "Printing"
msgstr "Imprimindo" msgstr "Imprimindo"
@@ -5188,9 +5199,6 @@ msgstr "Padrão inválido. Use N, N#K, ou uma lista separa por vírgulas com #K
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Formato inválido. Formato de vetor esperado: \"%1%\"" msgstr "Formato inválido. Formato de vetor esperado: \"%1%\""
msgid "N/A"
msgstr "N/D"
msgid "System agents" msgid "System agents"
msgstr "Agentes do sistema" msgstr "Agentes do sistema"
@@ -6137,17 +6145,23 @@ msgstr "Salvar projeto como"
msgid "Save current project as" msgid "Save current project as"
msgstr "Salvar o projeto atual como" msgstr "Salvar o projeto atual como"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importar 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importar 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Carregar um modelo" msgstr "Carregar um modelo"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importar Arquivo Zip" msgstr "Importar Arquivo ZIP"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Carregar modelos contidos em um arquivo zip" msgstr "Carregar modelos contidos em um arquivo ZIP"
msgid "Import Configs" msgid "Import Configs"
msgstr "Importar Configurações" msgstr "Importar Configurações"
@@ -7631,6 +7645,10 @@ msgstr "Personalizar a placa atual"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "O bico %s não pode imprimir %s." msgstr "O bico %s não pode imprimir %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Imprimir filamento de cor mista em uma impressora de extrusora única exige trocas de filamento e purgas frequentes, o que pode aumentar significativamente o desperdício e o risco de entupimento do bico ou da calha de resíduos."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Misturar %1% com %2% na impressão não é recomendado.\n" msgstr "Misturar %1% com %2% na impressão não é recomendado.\n"
@@ -7755,12 +7773,44 @@ msgstr "Sincronizar lista de filamentos do AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Definir filamentos para usar" msgstr "Definir filamentos para usar"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Adicionar Filamento Misto"
# AI Translated
msgid "Mixed Filament"
msgstr "Filamento Misto"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Remover o último filamento misto"
# AI Translated
msgid "Add mixed filament"
msgstr "Adicionar filamento misto"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "O filamento misto tem componentes inválidos ou incompatíveis. Edite novamente as entradas afetadas."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Pesquisar placa, objeto e peça." msgstr "Pesquisar placa, objeto e peça."
msgid "Pellets" msgid "Pellets"
msgstr "Pellets" msgstr "Pellets"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "O filamento misto tem referências de componentes quebradas"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Editar / Excluir / Mesclar"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "O filamento misto de destino usa este filamento físico como componente. Mesclar removerá este filamento físico e poderá invalidar o filamento misto. Continuar?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "Após a conclusão da sua operação, o projeto %s será encerrado e um novo projeto será criado." msgstr "Após a conclusão da sua operação, o projeto %s será encerrado e um novo projeto será criado."
@@ -7897,7 +7947,13 @@ msgstr "Por favor, confirme se o G-code dentro dessas predefinições é seguro
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Predefinição Personalizada" msgstr "Predefinição Personalizada"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Os nomes dos componentes dentro do arquivo STEP não estão no formato UTF-8!" msgstr "Os nomes dos componentes dentro do arquivo STEP não estão no formato UTF-8!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -7919,7 +7975,7 @@ msgstr "O volume do objeto é zero"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"O objeto do arquivo %s é muito pequeno, e pode estar em metros ou polegadas.\n" "O objeto do arquivo %s é muito pequeno, e pode estar em metros ou polegadas.\n"
"Deseja redimensioná-lo para milímetros?" "Deseja redimensioná-lo para milímetros?"
@@ -7939,6 +7995,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Objeto multi-peça detectado" msgstr "Objeto multi-peça detectado"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Associando texturas aos filamentos"
# AI Translated
msgid "Texture Import Warning"
msgstr "Aviso de Importação de Textura"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Carregar esses arquivos como um único objeto com múltiplas peças?\n" msgstr "Carregar esses arquivos como um único objeto com múltiplas peças?\n"
@@ -8146,6 +8210,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Sincronizar agora" msgstr "Sincronizar agora"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Falha ao importar a textura. O modelo parece conter dados de textura, mas o processo de importação não pôde ser concluído. O modelo será importado apenas como geometria."
# AI Translated
msgid "Applying texture colors..."
msgstr "Aplicando cores de textura..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Atualizando a visualização 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "Cores de textura aplicadas."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Você pode manter as predefinições modificadas no novo projeto ou descartá-las" msgstr "Você pode manter as predefinições modificadas no novo projeto ou descartá-las"
@@ -8277,6 +8357,17 @@ msgstr "Salvar arquivo fatiado como:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "O arquivo %s foi enviado para o espaço de armazenamento da impressora e pode ser visualizado na impressora." msgstr "O arquivo %s foi enviado para o espaço de armazenamento da impressora e pode ser visualizado na impressora."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publicar"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "O tipo de bico não está configurado. Configure o bico e tente novamente." msgstr "O tipo de bico não está configurado. Configure o bico e tente novamente."
@@ -9379,6 +9470,10 @@ msgstr "Vaso espiral"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Sequência de filamento da primeira camada" msgstr "Sequência de filamento da primeira camada"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "A lista de filamentos contém filamentos mistos. A sequência de filamentos personalizada não terá efeito."
msgid "By Layer" msgid "By Layer"
msgstr "Por Camada" msgstr "Por Camada"
@@ -9406,9 +9501,6 @@ msgstr "Ir para a página web de publicação de modelos"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Nota: A preparação pode levar vários minutos. Por favor, seja paciente." msgstr "Nota: A preparação pode levar vários minutos. Por favor, seja paciente."
msgid "Publish"
msgstr "Publicar"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Publicação cancelada" msgstr "Publicação cancelada"
@@ -9424,6 +9516,64 @@ msgstr "Enviando dados"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Ir para a página web" msgstr "Ir para a página web"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Salvar %s como" msgstr "Salvar %s como"
@@ -10740,11 +10890,11 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Nenhuma modificação precisa ser copiada." msgstr "Nenhuma modificação precisa ser copiada."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Copiar parâmetros" msgstr "Copiar parâmetros"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Modificar parâmetros de %s" msgstr "Modificar parâmetros de %s"
#, c-format, boost-format #, c-format, boost-format
@@ -11255,27 +11405,6 @@ msgstr "Volumes de purga para troca de filamento"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Escolha a cor do filamento" msgstr "Escolha a cor do filamento"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "A visualização ao vivo nativa do Wayland requer o receptor de vídeo GTK do GStreamer. Instale o plugin gtksink para GStreamer e reinicie o OrcaSlicer."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Falha ao inicializar o receptor de vídeo nativo do Wayland GStreamer. Verifique a instalação do plugin GStreamer GTK."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "O Windows Media Player é necessário para esta tarefa! Você quer habilitar o 'Windows Media Player' para seu sistema operacional?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource não foi registrado corretamente para reprodução de mídia! Pressione Sim para registrá-lo novamente. Você será promovido duas vezes"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Componente BambuSource registrado para reprodução de mídia não encontrado! Por favor, reinstale o OrcaSlicer ou procure ajuda da comunidade."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Usando um BambuSource de uma instalação diferente, a reprodução de vídeo pode não funcionar corretamente! Pressione Sim para consertar."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Seu sistema não possui codecs H.264 para o GStreamer, que são necessários para reproduzir vídeos. (Tente instalar os pacotes gstreamer1.0-plugins-bad ou gstreamer1.0-libav e depois reinicie o OrcaSlicer?)"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "O agente na nuvem não está disponível. Reinicie o OrcaSlicer e tente novamente." msgstr "O agente na nuvem não está disponível. Reinicie o OrcaSlicer e tente novamente."
@@ -11973,6 +12102,10 @@ msgstr "Se ainda assim desejar imprimir, você pode ativar a opção em Preferê
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Nenhuma extrusão com as configurações atuais." msgstr "Nenhuma extrusão com as configurações atuais."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Um filamento misto com gradiente está em uso, mas 'Subcamada de cor mista' está desativado. O gradiente não será impresso."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "O modo suave do timelapse não é suportado quando a sequência \"por objeto\" está ativada." msgstr "O modo suave do timelapse não é suportado quando a sequência \"por objeto\" está ativada."
@@ -12009,6 +12142,10 @@ msgstr "Você pode querer reduzir o tamanho do seu modelo ou alterar as configur
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "A altura de camada variável não é suportada com suportes Orgânicos." msgstr "A altura de camada variável não é suportada com suportes Orgânicos."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "O filamento da torre de purga não pode ser um filamento misto."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Diferentes diâmetros de bico e diferentes diâmetros de filamento podem não funcionar bem quando a torre de purga estiver habilitada. É muito experimental, então prossiga com cautela." msgstr "Diferentes diâmetros de bico e diferentes diâmetros de filamento podem não funcionar bem quando a torre de purga estiver habilitada. É muito experimental, então prossiga com cautela."
@@ -12355,7 +12492,7 @@ msgstr "mm ou %"
msgid "Other layers" msgid "Other layers"
msgstr "Outras camadas" msgstr "Outras camadas"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Essa é a temperatura da mesa para camadas exceto a inicial. O valor 0 significa que o filamento não suporta a impressão na Placa Fria SuperTack." msgstr "Essa é a temperatura da mesa para camadas exceto a inicial. O valor 0 significa que o filamento não suporta a impressão na Placa Fria SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13702,6 +13839,8 @@ msgstr "Tempo da camada"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "A ventoinha de resfriamento de peças será ativado para camadas cujo tempo estimado seja mais curto que esse valor. A velocidade da ventoinha é interpolada entre as velocidades mínima e máxima da ventoinha de acordo com o tempo de impressão da camada." msgstr "A ventoinha de resfriamento de peças será ativado para camadas cujo tempo estimado seja mais curto que esse valor. A velocidade da ventoinha é interpolada entre as velocidades mínima e máxima da ventoinha de acordo com o tempo de impressão da camada."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14007,6 +14146,62 @@ msgstr "Material de suporte"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "O material de suporte é comumente usado para imprimir suportes e interfaces de suporte." msgstr "O material de suporte é comumente usado para imprimir suportes e interfaces de suporte."
# AI Translated
msgid "Is mixed filament"
msgstr "É filamento misto"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Define se este slot de filamento é um filamento misto composto por vários filamentos físicos"
# AI Translated
msgid "Mixed filament components"
msgstr "Componentes do filamento misto"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Índices (começando em 1) dos filamentos componentes, separados por vírgulas; ex.: \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Proporções de subcamada do filamento misto"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Valores de proporção separados por vírgulas cuja soma seja 1.0; ex.: \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Gradiente do filamento misto"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Ativa o modo de gradiente na direção Z para as subcamadas do filamento misto. Quando ativado, as proporções das subcamadas variam linearmente ao longo das camadas."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Faixa do gradiente do filamento misto"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Proporções inicial e final do primeiro componente no modo de gradiente. Par separado por vírgula; ex.: \"0.10,0.90\" significa de 10% a 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Curva do gradiente do filamento misto"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Curva personalizada opcional, no estilo do Photoshop, que mapeia o progresso em Z para a proporção do primeiro componente. Codificada como pontos de controle separados por barras verticais, no formato \"x,y\" (legado) ou \"x,y,m_in,m_out\" quando é necessário substituir a tangente (um valor vazio ou \"nan\" usa o padrão PCHIP). x está em [0,1]; y é limitado à faixa de proporção configurada; ex.: \"0,0.15|0.5,0.50|1,0.85\". Quando vazio, o gradient_range linear é usado."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Gradiente por peça do filamento misto"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Quando o modo de gradiente está ativado, aplica o gradiente a cada peça de uma montagem de forma independente, em vez de tratar toda a montagem como uma única faixa Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filamento imprimível" msgstr "Filamento imprimível"
@@ -15243,6 +15438,8 @@ msgstr "Força máxima do eixo Y"
msgid "The allowed maximum output force of Y axis" msgid "The allowed maximum output force of Y axis"
msgstr "A força máxima de saída permitida do eixo Y" msgstr "A força máxima de saída permitida do eixo Y"
# AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15253,6 +15450,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "A carga de massa da mesa do equipamento no eixo Y" msgstr "A carga de massa da mesa do equipamento no eixo Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15565,7 +15763,7 @@ msgstr "Os pontos de início e fim que vão da área do cortador até a calha de
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Reduzir retração durante o preenchimento" msgstr "Reduzir retração durante o preenchimento"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Não retrair quando o movimento está completamente na área de preenchimento. Isso significa que o vazamento não pode ser visto. Isso pode reduzir o número de retratações para modelos complexos e economizar tempo de impressão, mas torna a geração de fatiamento e G-code mais lenta. Note que o Z-Hop também não é realizado em áreas onde a retração é omitida." msgstr "Não retrair quando o movimento está completamente na área de preenchimento. Isso significa que o vazamento não pode ser visto. Isso pode reduzir o número de retratações para modelos complexos e economizar tempo de impressão, mas torna a geração de fatiamento e G-code mais lenta. Note que o Z-Hop também não é realizado em áreas onde a retração é omitida."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -15730,7 +15928,7 @@ msgstr "Quantidade de retração depois da limpeza"
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Este é o comprimento da retração rápida antes de uma limpeza, em relação ao comprimento da retração.\n" "Este é o comprimento da retração rápida antes de uma limpeza, em relação ao comprimento da retração.\n"
@@ -15766,18 +15964,16 @@ msgstr "Retração longa na troca de extrusora"
msgid "Retraction distance when extruder change" msgid "Retraction distance when extruder change"
msgstr "Distância de retração na troca de extrusora" msgstr "Distância de retração na troca de extrusora"
# AI Translated
msgid "Retraction Length (Toolchange)" msgid "Retraction Length (Toolchange)"
msgstr "Comprimento da retração (Troca de ferramenta)" msgstr "Comprimento da Retração (Troca de ferramenta)"
# AI Translated
msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)." msgid "When retraction is triggered before changing tool, filament is pulled back by the specified amount (the length is measured on raw filament, before it enters the extruder)."
msgstr "Quando a retração é acionada antes da troca de ferramenta, o filamento é puxado de volta na quantidade especificada (o comprimento é medido no filamento bruto, antes de entrar na extrusora)." msgstr "Quando a retração é acionada antes da troca de ferramenta, o filamento é puxado de volta na quantidade especificada (o comprimento é medido no filamento bruto, antes de entrar na extrusora)."
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Altura de Z-hop" msgstr "Altura de Z-hop"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Sempre que há uma retração, o bico é levantado um pouco para criar folga entre o bico e a impressão. Isso evita que o bico atinja a impressão ao se mover. Usar linhas em espiral para levantar Z pode evitar stringing." msgstr "Sempre que há uma retração, o bico é levantado um pouco para criar folga entre o bico e a impressão. Isso evita que o bico atinja a impressão ao se mover. Usar linhas em espiral para levantar Z pode evitar stringing."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -15867,9 +16063,8 @@ msgstr "Comprimento extra na retração"
msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed." msgid "When the retraction is compensated after the travel move, the extruder will push this additional amount of filament. This setting is rarely needed."
msgstr "Quando a retração é compensada após o movimento de deslocamento, a extrusora empurrará essa quantidade adicional de filamento. Esta configuração é raramente necessária." msgstr "Quando a retração é compensada após o movimento de deslocamento, a extrusora empurrará essa quantidade adicional de filamento. Esta configuração é raramente necessária."
# AI Translated
msgid "Extra length on restart (Toolchange)" msgid "Extra length on restart (Toolchange)"
msgstr "Comprimento extra na retração (Troca de ferramenta)" msgstr "Comprimento extra no reinício (Troca de ferramenta)"
msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament." msgid "When the retraction is compensated after changing tool, the extruder will push this additional amount of filament."
msgstr "Quando a retração é compensada após a troca de ferramenta, a extrusora empurrará essa quantidade adicional de filamento." msgstr "Quando a retração é compensada após a troca de ferramenta, a extrusora empurrará essa quantidade adicional de filamento."
@@ -16279,13 +16474,11 @@ msgstr "Troca de ferramenta na torre de purga"
msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead." msgid "Force the toolhead to travel to the wipe tower before issuing the tool change command (Tx). Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. By default Orca skips the travel on multi-toolhead machines because the firmware handles the head swap, which can result in the Tx command being issued above the printed part. Enable this option if you want the tool change to always be issued above the wipe tower instead."
msgstr "Força o cabeçote de impressão a se deslocar até a torre de purga antes de emitir o comando de troca de ferramenta (Tx). Relevante apenas para impressoras com múltiplas extrusoras (múltiplos cabeçotes de impressão) que utilizam uma torre de purga Tipo 2. Por padrão, o Orca ignora o deslocamento em máquinas com múltiplos cabeçotes de impressão, pois o firmware gerencia a troca do cabeçote, o que pode resultar na emissão do comando Tx acima da peça impressa. Habilite esta opção se desejar que a troca de ferramenta seja sempre emitida acima da torre de purga." msgstr "Força o cabeçote de impressão a se deslocar até a torre de purga antes de emitir o comando de troca de ferramenta (Tx). Relevante apenas para impressoras com múltiplas extrusoras (múltiplos cabeçotes de impressão) que utilizam uma torre de purga Tipo 2. Por padrão, o Orca ignora o deslocamento em máquinas com múltiplos cabeçotes de impressão, pois o firmware gerencia a troca do cabeçote, o que pode resultar na emissão do comando Tx acima da peça impressa. Habilite esta opção se desejar que a troca de ferramenta seja sempre emitida acima da torre de purga."
# AI Translated
msgid "Wait for temperature on wipe tower" msgid "Wait for temperature on wipe tower"
msgstr "Aguardar a temperatura na torre de purga" msgstr "Aguardar a temperatura na torre de purga"
# AI Translated
msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command." msgid "Pick up the new tool without waiting for it to reach printing temperature, travel to the wipe tower, and wait for the temperature there, right before purging. Ooze from the heat-up lands on the tower instead of the model, and the travel overlaps with the heating. Only relevant for multi-extruder (multi-toolhead) printers using a Type 2 wipe tower. The firmware or tool change macro must not wait for the temperature itself. When disabled, the temperature wait is issued right after the tool change command."
msgstr "Pega a nova ferramenta sem esperar que ela atinja a temperatura de impressão, desloca-se até a torre de purga e aguarda a temperatura ali, logo antes de purgar. O vazamento causado pelo aquecimento cai na torre em vez do modelo, e o deslocamento acontece durante o aquecimento. Relevante apenas para impressoras multiextrusora (multicabeça) que usam uma torre de purga do tipo 2. O firmware ou a macro de troca de ferramenta não devem aguardar a temperatura por conta própria. Quando desativado, a espera de temperatura é emitida logo após o comando de troca de ferramenta." msgstr "Pega a nova ferramenta sem esperar que ela atinja a temperatura de impressão, desloca-se até a torre de purga e aguarda a temperatura ali, logo antes de purgar. O vazamento causado pelo aquecimento cai na torre em vez do modelo, e o deslocamento acontece junto com o aquecimento. Relevante apenas para impressoras multiextrusora (multicabeça) que usam uma torre de purga do Tipo 2. O firmware ou a macro de troca de ferramenta não devem aguardar a temperatura por conta própria. Quando desativado, a espera de temperatura é emitida logo após o comando de troca de ferramenta."
msgid "No sparse layers (beta)" msgid "No sparse layers (beta)"
msgstr "Sem camadas esparsas (beta)" msgstr "Sem camadas esparsas (beta)"
@@ -16808,6 +17001,14 @@ msgstr ""
"\n" "\n"
"Definir um valor na configuração de quantidade de retração antes da limpeza abaixo executará qualquer retração em excesso antes da limpeza, caso contrário, será realizada após." "Definir um valor na configuração de quantidade de retração antes da limpeza abaixo executará qualquer retração em excesso antes da limpeza, caso contrário, será realizada após."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Subcamada de cor mista"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Ativa a divisão em subcamadas de cor mista. Quando ativado, as camadas que contêm filamentos de cor mista são divididas em subcamadas para obter efeitos de mistura de cores."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "A torre de purga pode ser usada para limpar o resíduo no bico e estabilizar a pressão na câmara dentro do bico, a fim de evitar defeitos de aparência ao imprimir objetos." msgstr "A torre de purga pode ser usada para limpar o resíduo no bico e estabilizar a pressão na câmara dentro do bico, a fim de evitar defeitos de aparência ao imprimir objetos."
@@ -17864,6 +18065,10 @@ msgstr "A geração da malha do arquivo do modelo falhou ou não há forma váli
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "O arquivo fornecido não pôde ser lido porque está vazio." msgstr "O arquivo fornecido não pôde ser lido porque está vazio."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "O formato do arquivo é incompatível e não pode ser lido."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Formato de arquivo desconhecido: o arquivo de entrada deve ter extensão .stl, .obj, .amf(.xml)." msgstr "Formato de arquivo desconhecido: o arquivo de entrada deve ter extensão .stl, .obj, .amf(.xml)."
@@ -19315,19 +19520,19 @@ msgstr "Apenas impressoras com alterações nas predefinições de impressora, f
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Exibir apenas os nomes dos filamentos com alterações nas predefinições de filamento." msgstr "Exibir apenas os nomes dos filamentos com alterações nas predefinições de filamento."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Apenas os nomes das impressoras com predefinições de impressora do usuário serão exibidos, e cada predefinição escolhida será exportada como um arquivo zip." msgstr "Apenas os nomes das impressoras com predefinições de impressora do usuário serão exibidos, e cada predefinição escolhida será exportada como um arquivo zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Apenas os nomes dos filamentos com predefinições de filamento do usuário serão exibidos, \n" "Apenas os nomes dos filamentos com predefinições de filamento do usuário serão exibidos, \n"
"e todas as predefinições de filamento do usuário em cada nome de filamento selecionadas serão exportadas como um arquivo zip." "e todas as predefinições de filamento do usuário em cada nome de filamento selecionadas serão exportadas como um arquivo zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Apenas os nomes das impressoras com predefinições de processo alterados serão exibidos, \n" "Apenas os nomes das impressoras com predefinições de processo alterados serão exibidos, \n"
"e todas os predefinições de processo do usuário em cada nome de impressora selecionadas serão exportados como um arquivo zip." "e todas os predefinições de processo do usuário em cada nome de impressora selecionadas serão exportados como um arquivo zip."
@@ -19556,7 +19761,7 @@ msgstr "Copiar informações do sistema para a área de transferência"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Precisamos de informações para diagnosticar a origem do problema. Consulte a página da wiki para obter um guia detalhado." msgstr "Precisamos de informações para diagnosticar a origem do problema. Consulte a página da wiki para obter um guia detalhado."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "O botão \"Empacotar\" reúne o arquivo do projeto e os logs da sessão atual em um arquivo ZIP." msgstr "O botão \"Empacotar\" reúne o arquivo do projeto e os logs da sessão atual em um arquivo ZIP."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -19598,7 +19803,7 @@ msgstr "Nível de log"
msgid "Stored logs" msgid "Stored logs"
msgstr "Logs armazenados" msgstr "Logs armazenados"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Compacta todos os logs armazenados em um arquivo ZIP." msgstr "Compacta todos os logs armazenados em um arquivo ZIP."
msgid "Profiles" msgid "Profiles"
@@ -19665,7 +19870,7 @@ msgstr "Tipo de impressora não encontrado, selecione manualmente."
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Autorizando…" msgstr "Autorizando…"
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Erro. Não foi possível obter o token de API para autorização" msgstr "Erro. Não foi possível obter o token de API para autorização"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20111,8 +20316,9 @@ msgstr "Removido"
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "Ativar atribuição inteligente de filamento: Atribui um filamento a vários bicos para maximizar a economia" msgstr "Ativar atribuição inteligente de filamento: Atribui um filamento a vários bicos para maximizar a economia"
msgid "Fila Saving" # AI Translated
msgstr "Econo Filamento" msgid "File Saving"
msgstr "Salvamento de Arquivo"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Não me avise novamente" msgstr "Não me avise novamente"
@@ -20394,6 +20600,15 @@ msgstr "Esta ação não pode ser desfeita. Continuar?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Ignorando objetos." msgstr "Ignorando objetos."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Selecionar Filamento" msgstr "Selecionar Filamento"
@@ -20471,6 +20686,9 @@ msgstr "Reiniciar Agora"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "SEM NENHUM MOLDEAMENTO" msgstr "SEM NENHUM MOLDEAMENTO"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Velocidade volumétrica" msgstr "Velocidade volumétrica"
@@ -21047,6 +21265,36 @@ msgstr ""
"Evitar empenamento\n" "Evitar empenamento\n"
"Você sabia que ao imprimir materiais propensos ao empenamento como ABS, aumentar adequadamente a temperatura da mesa aquecida pode reduzir a probabilidade de empenamento?" "Você sabia que ao imprimir materiais propensos ao empenamento como ABS, aumentar adequadamente a temperatura da mesa aquecida pode reduzir a probabilidade de empenamento?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "A visualização ao vivo nativa do Wayland requer o receptor de vídeo GTK do GStreamer. Instale o plugin gtksink para GStreamer e reinicie o OrcaSlicer."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Falha ao inicializar o receptor de vídeo nativo do Wayland GStreamer. Verifique a instalação do plugin GStreamer GTK."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "O Windows Media Player é necessário para esta tarefa! Você quer habilitar o 'Windows Media Player' para seu sistema operacional?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource não foi registrado corretamente para reprodução de mídia! Pressione Sim para registrá-lo novamente. Você será promovido duas vezes"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Componente BambuSource registrado para reprodução de mídia não encontrado! Por favor, reinstale o OrcaSlicer ou procure ajuda da comunidade."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Usando um BambuSource de uma instalação diferente, a reprodução de vídeo pode não funcionar corretamente! Pressione Sim para consertar."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Seu sistema não possui codecs H.264 para o GStreamer, que são necessários para reproduzir vídeos. (Tente instalar os pacotes gstreamer1.0-plugins-bad ou gstreamer1.0-libav e depois reinicie o OrcaSlicer?)"
#~ msgid "N"
#~ msgstr "N"
#~ msgid "g"
#~ msgstr "g"
#~ msgid "Fila Saving"
#~ msgstr "Econo Filamento"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: OrcaSlicer V2.5.0\n" "Project-Id-Version: OrcaSlicer V2.5.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-02-25 13:38+0300\n" "PO-Revision-Date: 2026-02-25 13:38+0300\n"
"Last-Translator: Felix14_v2\n" "Last-Translator: Felix14_v2\n"
"Language-Team: Felix14_v2 (ДС/ТГ: @felix14_v2, почта: aleks111001@list.ru), Andylg <andylg@yandex.ru>\n" "Language-Team: Felix14_v2 (ДС/ТГ: @felix14_v2, почта: aleks111001@list.ru), Andylg <andylg@yandex.ru>\n"
@@ -2911,6 +2911,10 @@ msgstr "Правка"
msgid "Merge with" msgid "Merge with"
msgstr "Объединить с" msgstr "Объединить с"
# AI Translated
msgid "Decompose Color"
msgstr "Разложить цвет"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Удалить материал" msgstr "Удалить материал"
@@ -3222,6 +3226,10 @@ msgstr "Сборка"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Сборка моделей" msgstr "Сборка моделей"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Использование переменной высоты слоя вместе с подслоем смешанного цвета может ухудшить качество смешивания цветов."
# Запись в истории действий # Запись в истории действий
msgid "Add layers" msgid "Add layers"
msgstr "Добавление слоёв" msgstr "Добавление слоёв"
@@ -4780,7 +4788,7 @@ msgstr ""
"\n" "\n"
"Значение будет сброшено до 0." "Значение будет сброшено до 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Чередующаяся дополнительная стенка не работает, если для «Сохранение толщины вертикальной оболочки» установлено значение «Все»." msgstr "Чередующаяся дополнительная стенка не работает, если для «Сохранение толщины вертикальной оболочки» установлено значение «Все»."
msgid "" msgid ""
@@ -4833,7 +4841,7 @@ msgstr ""
"Нет отключить черновую башню" "Нет отключить черновую башню"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"Начальная высота не должна превышать высоту слоя.\n" "Начальная высота не должна превышать высоту слоя.\n"
@@ -4841,7 +4849,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Перекрытие должно быть меньше внутренней оболочки.\n" "Перекрытие должно быть меньше внутренней оболочки.\n"
@@ -4883,6 +4891,11 @@ msgid ""
"No - Cancel enabling spiral mode" "No - Cancel enabling spiral mode"
msgstr "Использовать эти настройки и режим вазы?" msgstr "Использовать эти настройки и режим вазы?"
# Не знаю, как и почему, но это, похоже, исправляет "вопросики" вместо
# символов
msgid "N/A"
msgstr ""
msgid "Printing" msgid "Printing"
msgstr "Печать" msgstr "Печать"
@@ -5352,11 +5365,6 @@ msgstr "Недопустимый шаблон. Используйте N, N#K и
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Недопустимый формат. Ожидаемый векторный формат: \"%1%\"" msgstr "Недопустимый формат. Ожидаемый векторный формат: \"%1%\""
# Не знаю, как и почему, но это, похоже, исправляет "вопросики" вместо
# символов
msgid "N/A"
msgstr ""
msgid "System agents" msgid "System agents"
msgstr "Системные агенты" msgstr "Системные агенты"
@@ -6370,16 +6378,22 @@ msgstr "Сохранить проект как"
msgid "Save current project as" msgid "Save current project as"
msgstr "Сохранить текущий проект как" msgstr "Сохранить текущий проект как"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Импорт 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Импорт 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Загрузка модели" msgstr "Загрузка модели"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Импорт ZIP-архива" msgstr "Импорт ZIP-архива"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Загрузка моделей, содержащихся в ZIP-архиве" msgstr "Загрузка моделей, содержащихся в ZIP-архиве"
msgid "Import Configs" msgid "Import Configs"
@@ -7891,6 +7905,10 @@ msgstr "Настроить стол"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Внимание: «%s» экструдер не может печатать %s." msgstr "Внимание: «%s» экструдер не может печатать %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Печать материала смешанного цвета на принтере с одним экструдером требует частой смены материала и прочистки, что может значительно увеличить количество отходов и риск засорения сопла или жёлоба для отходов."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Совмещение %1% с %2% при печати не рекомендуется.\n" msgstr "Совмещение %1% с %2% при печати не рекомендуется.\n"
@@ -8021,12 +8039,44 @@ msgstr "Синхронизировать материалы"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Выбрать материал" msgstr "Выбрать материал"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Добавить смешанный материал"
# AI Translated
msgid "Mixed Filament"
msgstr "Смешанный материал"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Удалить последний смешанный материал"
# AI Translated
msgid "Add mixed filament"
msgstr "Добавить смешанный материал"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "У смешанного материала недопустимые или несовпадающие компоненты. Пожалуйста, отредактируйте затронутые записи заново."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Поиск стола, модели или части..." msgstr "Поиск стола, модели или части..."
msgid "Pellets" msgid "Pellets"
msgstr "Гранулы" msgstr "Гранулы"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "У смешанного материала нарушены ссылки на компоненты"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Изменить / Удалить / Объединить"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Целевой смешанный материал использует этот физический материал в качестве компонента. Объединение удалит этот физический материал и может сделать смешанный материал недействительным. Продолжить?"
# Порядок слов сильно зависит от контекста; не могу воспроизвести в интерфейсе. По идее, выводится при bool Sidebar::is_new_project_in_gcode3mf(), но что-либо менять в нарезанном .gcode.3mf вообще нельзя # Порядок слов сильно зависит от контекста; не могу воспроизвести в интерфейсе. По идее, выводится при bool Sidebar::is_new_project_in_gcode3mf(), но что-либо менять в нарезанном .gcode.3mf вообще нельзя
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
@@ -8168,8 +8218,14 @@ msgstr "Во избежание повреждения принтера убед
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Пользовательский профиль" msgstr "Пользовательский профиль"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Имена компонентов внутри файла STEP не в формате UTF8." msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Имена компонентов внутри файла STEP не в формате UTF-8."
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "Из-за неподдерживаемой кодировки в названии могут присутствовать ошибочные символы." msgstr "Из-за неподдерживаемой кодировки в названии могут присутствовать ошибочные символы."
@@ -8190,7 +8246,7 @@ msgstr "Объём модели равен нулю"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Модель из файла %s слишком мала. Возможно, её размеры \n" "Модель из файла %s слишком мала. Возможно, её размеры \n"
"в метрах или дюймах. Внутренней единицей программы \n" "в метрах или дюймах. Внутренней единицей программы \n"
@@ -8211,6 +8267,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Обнаружена модель, состоящая из нескольких частей" msgstr "Обнаружена модель, состоящая из нескольких частей"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Сопоставление текстур с материалами"
# AI Translated
msgid "Texture Import Warning"
msgstr "Предупреждение при импорте текстуры"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Загрузить эти файлы как единую модель, состоящую из нескольких частей?\n" msgstr "Загрузить эти файлы как единую модель, состоящую из нескольких частей?\n"
@@ -8425,6 +8489,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Синхронизировать" msgstr "Синхронизировать"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Не удалось импортировать текстуру. Похоже, модель содержит данные текстуры, но завершить импорт не удалось. Модель будет импортирована только как геометрия."
# AI Translated
msgid "Applying texture colors..."
msgstr "Применение цветов текстуры..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Обновление 3D-вида..."
# AI Translated
msgid "Texture colors applied."
msgstr "Цвета текстуры применены."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Вы можете перенести сделанные изменения в новый проект или отказаться от их сохранения" msgstr "Вы можете перенести сделанные изменения в новый проект или отказаться от их сохранения"
@@ -8556,6 +8636,17 @@ msgstr "Сохранить нарезанный файл как:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Файл %s отправлен в память принтера и может быть просмотрен на нём." msgstr "Файл %s отправлен в память принтера и может быть просмотрен на нём."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Опубликовать"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Не указан тип сопла. Укажите его и попробуйте ещё раз." msgstr "Не указан тип сопла. Укажите его и попробуйте ещё раз."
@@ -9671,6 +9762,10 @@ msgstr "Режим вазы"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Очерёдность материалов на первом слое" msgstr "Очерёдность материалов на первом слое"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Список материалов содержит смешанные материалы. Пользовательская последовательность материалов не будет применена."
msgid "By Layer" msgid "By Layer"
msgstr "Послойно" msgstr "Послойно"
@@ -9698,9 +9793,6 @@ msgstr "Перейти на веб-страницу публикации мод
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Примечание: подготовка может занять несколько минут. Пожалуйста, наберитесь терпения." msgstr "Примечание: подготовка может занять несколько минут. Пожалуйста, наберитесь терпения."
msgid "Publish"
msgstr "Опубликовать"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Публикация была отменена" msgstr "Публикация была отменена"
@@ -9716,6 +9808,64 @@ msgstr "Отправка данных"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Перейти на страницу" msgstr "Перейти на страницу"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Сохранить %s как" msgstr "Сохранить %s как"
@@ -11072,11 +11222,11 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Перенос изменений не требуется." msgstr "Перенос изменений не требуется."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Копировать настройки" msgstr "Копировать настройки"
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Изменить настройки %s" msgstr "Изменить настройки %s"
#, c-format, boost-format #, c-format, boost-format
@@ -11586,27 +11736,6 @@ msgstr "Объёмы прочистки при смене материала"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Изменение цвета" msgstr "Изменение цвета"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Для нативного отображения трансляции в Wayland требуется gtksink (плагин для GStreamer). Установите необходимый пакет плагинов и перезапустите OrcaSlicer."
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Не удалось запустить нативную трансляцию GSteramer через Wayland. Проверьте наличие установленного пакета плагинов GStreamer."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Для этой задачи требуется Windows Media Player! Хотите включить его в своей ОС?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "Компонент BambuSource неправильно зарегистрирован для воспроизведения медиафайлов! Нажмите «Да», чтобы повторно зарегистрировать его"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Отсутствует компонент BambuSource для воспроизведения медиа. Переустановите OrcaSlicer или обратитесь за помощью к сообществу."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "При использовании компонентов BambuSource из другого инсталлятора, воспроизведение видео может работать некорректно! Нажмите «Да», чтобы исправить это."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "В вашей системе отсутствуют кодеки H.264 для GStreamer, которые необходимы для воспроизведения видео (попробуйте установить пакеты gstreamer1.0-plugins-bad или gstreamer1.0-libav, а затем перезапустить Orca Slicer)."
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Облачный агент недоступен. Перезапустите OrcaSlicer и повторите попытку." msgstr "Облачный агент недоступен. Перезапустите OrcaSlicer и повторите попытку."
@@ -12303,6 +12432,10 @@ msgstr "Если вас это не пугает, эту проверку мож
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "При текущих настройках экструзия отсутствует." msgstr "При текущих настройках экструзия отсутствует."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Используется смешанный материал с градиентом, но параметр «Подслой смешанного цвета» отключён. Градиент не будет напечатан."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Плавный режим таймлапса не поддерживается, когда включена последовательность печати моделей по очереди." msgstr "Плавный режим таймлапса не поддерживается, когда включена последовательность печати моделей по очереди."
@@ -12341,6 +12474,10 @@ msgstr "Попробуйте уменьшить размер модели или
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Функция переменной высоты слоя несовместима с органическим стилем древовидных поддержек." msgstr "Функция переменной высоты слоя несовместима с органическим стилем древовидных поддержек."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Материал черновой башни не может быть смешанным материалом."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Совместное использование черновой башни с разными диаметрами сопел и прутков может привести к некорректной нарезке при включённой черновой башне. Этот метод работы экспериментальный, поэтому будьте осторожны при использовании." msgstr "Совместное использование черновой башни с разными диаметрами сопел и прутков может привести к некорректной нарезке при включённой черновой башне. Этот метод работы экспериментальный, поэтому будьте осторожны при использовании."
@@ -12694,7 +12831,7 @@ msgstr "мм или %"
msgid "Other layers" msgid "Other layers"
msgstr "Основная" msgstr "Основная"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Температура стола для всех остальных слоёв. 0 материал не поддерживает это покрытие." msgstr "Температура стола для всех остальных слоёв. 0 материал не поддерживает это покрытие."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14159,6 +14296,8 @@ msgstr "Время слоя"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Вентилятор охлаждения моделей будет включён для слоёв, расчётное время которых меньше этого значения. Скорость вентилятора интерполируется между минимальной и максимальной скоростями зависимости от времени печати слоя." msgstr "Вентилятор охлаждения моделей будет включён для слоёв, расчётное время которых меньше этого значения. Скорость вентилятора интерполируется между минимальной и максимальной скоростями зависимости от времени печати слоя."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "с" msgstr "с"
@@ -14488,6 +14627,62 @@ msgstr "Материал поддержки"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Обычно используется для печати поддержки и связующего слоя (интерфейса)." msgstr "Обычно используется для печати поддержки и связующего слоя (интерфейса)."
# AI Translated
msgid "Is mixed filament"
msgstr "Является смешанным материалом"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Определяет, является ли этот слот материала смешанным материалом, состоящим из нескольких физических материалов"
# AI Translated
msgid "Mixed filament components"
msgstr "Компоненты смешанного материала"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Разделённые запятыми индексы материалов-компонентов, начиная с 1, например \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Доли подслоёв смешанного материала"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Разделённые запятыми значения долей, дающие в сумме 1.0, например \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Градиент смешанного материала"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Включает режим градиента по оси Z для подслоёв смешанного материала. При включении доли подслоёв линейно меняются от слоя к слою."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Диапазон градиента смешанного материала"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Начальная и конечная доли первого компонента в режиме градиента. Пара значений через запятую, например \"0.10,0.90\" означает от 10% до 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Кривая градиента смешанного материала"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Необязательная пользовательская кривая в стиле Photoshop, сопоставляющая прогресс по оси Z с долей первого компонента. Задаётся как контрольные точки, разделённые вертикальной чертой, в виде \"x,y\" (устаревший формат) или \"x,y,m_in,m_out\", если требуется переопределить касательную (пустое значение или \"nan\" означает использование значения PCHIP по умолчанию). x лежит в [0,1]; y ограничивается заданным диапазоном долей, например \"0,0.15|0.5,0.50|1,0.85\". Если поле пустое, вместо этого используется линейный gradient_range."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Градиент смешанного материала по частям"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Если включён режим градиента, градиент применяется к каждой части сборки отдельно, а не ко всей сборке как к единому диапазону Z."
# ??? Настройка в режиме разработчика. Должна отображаться где-то в настройках # ??? Настройка в режиме разработчика. Должна отображаться где-то в настройках
# профиля, но поиском не ищется. # профиля, но поиском не ищется.
msgid "Filament printable" msgid "Filament printable"
@@ -15878,6 +16073,8 @@ msgstr "Максимальное усилие оси Y"
msgid "The allowed maximum output force of Y axis" msgid "The allowed maximum output force of Y axis"
msgstr "Максимально допустимое усилие по оси Y." msgstr "Максимально допустимое усилие по оси Y."
# AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "Н" msgstr "Н"
@@ -15887,6 +16084,8 @@ msgstr "Масса стола (оси Y)"
msgid "The machine bed mass load of Y axis" msgid "The machine bed mass load of Y axis"
msgstr "Пассивная нагрузка механики оси Y массой стола." msgstr "Пассивная нагрузка механики оси Y массой стола."
# AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "г" msgstr "г"
@@ -16223,7 +16422,7 @@ msgstr "Начальная и конечная точки траектории
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "Откат только при пересечении периметров" msgstr "Откат только при пересечении периметров"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "" msgstr ""
"Отключает откат (и подъём по Z), когда перемещения совершаются полностью над заполнением (где любые подтёки, вероятно, будут скрыты). Это поможет снизить количество откатов при печати сложных моделей и немного сэкономить время, но увеличит время нарезки и генерации G-кода.\n" "Отключает откат (и подъём по Z), когда перемещения совершаются полностью над заполнением (где любые подтёки, вероятно, будут скрыты). Это поможет снизить количество откатов при печати сложных моделей и немного сэкономить время, но увеличит время нарезки и генерации G-кода.\n"
"\n" "\n"
@@ -16401,7 +16600,7 @@ msgstr "Вторичный откат"
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Быстрый откат после очистки, выраженный в процентах от общей длины отката. В некоторых случаях позволяет значительно снизить количество «паутины».\n" "Быстрый откат после очистки, выраженный в процентах от общей длины отката. В некоторых случаях позволяет значительно снизить количество «паутины».\n"
@@ -16449,7 +16648,7 @@ msgstr "При срабатывании отката перед сменой и
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Высота подъёма" msgstr "Высота подъёма"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "При каждом откате печатная голова немного приподнимается, создавая зазор между соплом и моделью. Это предотвращает столкновение сопла с моделью при перемещении. Использование спирального подъёма может помочь сократить образование \"паутины\"." msgstr "При каждом откате печатная голова немного приподнимается, создавая зазор между соплом и моделью. Это предотвращает столкновение сопла с моделью при перемещении. Использование спирального подъёма может помочь сократить образование \"паутины\"."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17660,6 +17859,14 @@ msgstr ""
"\n" "\n"
"Внимание: процент первичного отката будет увеличен, если длины очистки окажется недостаточно при текущей скорости отката (или из-за иных ограничений)." "Внимание: процент первичного отката будет увеличен, если длины очистки окажется недостаточно при текущей скорости отката (или из-за иных ограничений)."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Подслой смешанного цвета"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Включает разбиение на подслои смешанного цвета. При включении слои, содержащие материалы смешанного цвета, разбиваются на подслои для получения эффекта смешивания цветов."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Черновая башня специальная структура, которая используется для прочистки сопла от остатков материала и стабилизации давления внутри сопла при смене экструдера, чтобы избежать дефектов на поверхности печатаемой модели." msgstr "Черновая башня специальная структура, которая используется для прочистки сопла от остатков материала и стабилизации давления внутри сопла при смене экструдера, чтобы избежать дефектов на поверхности печатаемой модели."
@@ -18818,6 +19025,10 @@ msgstr "Не удалось обнаружить форму или создат
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Невозможно прочитать файл, так как он пуст." msgstr "Невозможно прочитать файл, так как он пуст."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Формат файла несовместим и не может быть прочитан."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Неизвестный формат файла: входной файл должен иметь расширение *.stl, *.obj или *.amf(.xml)." msgstr "Неизвестный формат файла: входной файл должен иметь расширение *.stl, *.obj или *.amf(.xml)."
@@ -20306,21 +20517,21 @@ msgstr "Будут отображаться только изменённые п
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Будут отображаться только изменённые профили материалов." msgstr "Будут отображаться только изменённые профили материалов."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "" msgstr ""
"Будут отображаться только изменённые профили принтеров.\n" "Будут отображаться только изменённые профили принтеров.\n"
"Все они будут экспортированы в единый zip-файл." "Все они будут экспортированы в единый zip-файл."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Будут отображаться только изменённые профили материалов.\n" "Будут отображаться только изменённые профили материалов.\n"
"Все они будут экспортированы в единый zip-файл." "Все они будут экспортированы в единый zip-файл."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Будут отображаться только профили принтеров с изменёнными настройками печати.\n" "Будут отображаться только профили принтеров с изменёнными настройками печати.\n"
"Все изменённые профили настроек будут экспортированы в единый zip-файл." "Все изменённые профили настроек будут экспортированы в единый zip-файл."
@@ -20560,7 +20771,7 @@ msgstr "Копировать в буфер обмена"
msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide." msgid "We need information for diagnosing source of the issue. Check wiki page for detailed guide."
msgstr "Эта информация требуется для диагностики проблем. Ознакомьтесь с руководством для получения подробностей." msgstr "Эта информация требуется для диагностики проблем. Ознакомьтесь с руководством для получения подробностей."
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Нажмите «Экспорт», чтобы сохранить текущий проект и журнал сессии в ZIP-архив." msgstr "Нажмите «Экспорт», чтобы сохранить текущий проект и журнал сессии в ZIP-архив."
msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue." msgid "Any additional visual examples like images or screen recordings might be helpful while reporting the issue."
@@ -20602,7 +20813,7 @@ msgstr "Уровень ведения журнала"
msgid "Stored logs" msgid "Stored logs"
msgstr "Сохранённые журналы" msgstr "Сохранённые журналы"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Нажмите «Экспорт», чтобы упаковать все сохранённые журналы в единый ZIP-архив" msgstr "Нажмите «Экспорт», чтобы упаковать все сохранённые журналы в единый ZIP-архив"
msgid "Profiles" msgid "Profiles"
@@ -20669,7 +20880,7 @@ msgstr "Требуется указать принтер вручную"
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Авторизация..." msgstr "Авторизация..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Ошибка получения токена авторизации" msgstr "Ошибка получения токена авторизации"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -21120,8 +21331,9 @@ msgstr "Удалено"
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "Включить умное назначение материалов: назначить один материал нескольким соплам для максимальной экономии" msgstr "Включить умное назначение материалов: назначить один материал нескольким соплам для максимальной экономии"
msgid "Fila Saving" # AI Translated
msgstr "Экономия материала" msgid "File Saving"
msgstr "Сохранение файла"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Больше не показывать" msgstr "Больше не показывать"
@@ -21407,6 +21619,15 @@ msgstr "Это действие необратимо. Продолжить?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Исключение объектов." msgstr "Исключение объектов."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Выбрать материал" msgstr "Выбрать материал"
@@ -21486,6 +21707,9 @@ msgstr "Перезапустить сейчас"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "Рэмминг отключён" msgstr "Рэмминг отключён"
msgid "s"
msgstr "с"
# Тянется только в окно настроек рэмминга # Тянется только в окно настроек рэмминга
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Объёмный расход" msgstr "Объёмный расход"
@@ -22081,6 +22305,36 @@ msgstr ""
"Предотвращение коробления материала\n" "Предотвращение коробления материала\n"
"Знаете ли вы, что при печати материалами, склонными к короблению, таких как ABS, повышение температуры подогреваемого стола может снизить эту вероятность?" "Знаете ли вы, что при печати материалами, склонными к короблению, таких как ABS, повышение температуры подогреваемого стола может снизить эту вероятность?"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Для нативного отображения трансляции в Wayland требуется gtksink (плагин для GStreamer). Установите необходимый пакет плагинов и перезапустите OrcaSlicer."
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Не удалось запустить нативную трансляцию GSteramer через Wayland. Проверьте наличие установленного пакета плагинов GStreamer."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Для этой задачи требуется Windows Media Player! Хотите включить его в своей ОС?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "Компонент BambuSource неправильно зарегистрирован для воспроизведения медиафайлов! Нажмите «Да», чтобы повторно зарегистрировать его"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Отсутствует компонент BambuSource для воспроизведения медиа. Переустановите OrcaSlicer или обратитесь за помощью к сообществу."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "При использовании компонентов BambuSource из другого инсталлятора, воспроизведение видео может работать некорректно! Нажмите «Да», чтобы исправить это."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "В вашей системе отсутствуют кодеки H.264 для GStreamer, которые необходимы для воспроизведения видео (попробуйте установить пакеты gstreamer1.0-plugins-bad или gstreamer1.0-libav, а затем перезапустить Orca Slicer)."
#~ msgid "N"
#~ msgstr "Н"
#~ msgid "g"
#~ msgstr "г"
#~ msgid "Fila Saving"
#~ msgstr "Экономия материала"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"Language: sv\n" "Language: sv\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
@@ -3289,6 +3289,10 @@ msgstr "Redigera"
msgid "Merge with" msgid "Merge with"
msgstr "Slå ihop med" msgstr "Slå ihop med"
# AI Translated
msgid "Decompose Color"
msgstr "Dela upp färg"
# AI Translated # AI Translated
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Radera detta filament" msgstr "Radera detta filament"
@@ -3610,6 +3614,10 @@ msgstr "Montering"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Slå ihop delar till ett objekt" msgstr "Slå ihop delar till ett objekt"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Att använda variabel lagerhöjd tillsammans med underlager med blandad färg kan ge sämre färgblandningskvalitet."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Lägg till lager" msgstr "Lägg till lager"
@@ -5279,7 +5287,7 @@ msgstr ""
"Värdet kommer att återställas till 0." "Värdet kommer att återställas till 0."
# AI Translated # AI Translated
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Alternerande extra vägg fungerar inte bra när säkerställ vertikal skaltjocklek är inställt på Alla." msgstr "Alternerande extra vägg fungerar inte bra när säkerställ vertikal skaltjocklek är inställt på Alla."
# AI Translated # AI Translated
@@ -5327,7 +5335,7 @@ msgstr ""
# AI Translated # AI Translated
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height måste vara mindre än layer_height.\n" "seam_slope_start_height måste vara mindre än layer_height.\n"
@@ -5336,7 +5344,7 @@ msgstr ""
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Låsdjupet bör vara mindre än ytskiktets djup.\n" "Låsdjupet bör vara mindre än ytskiktets djup.\n"
@@ -5379,6 +5387,10 @@ msgstr ""
"JA -Ändra dessa inställningar och möjliggör Spiral läge automatiskt\n" "JA -Ändra dessa inställningar och möjliggör Spiral läge automatiskt\n"
"NEJ -Avbryt Spiral läge denna gång" "NEJ -Avbryt Spiral läge denna gång"
# AI Translated
msgid "N/A"
msgstr "Ej tillämpligt"
msgid "Printing" msgid "Printing"
msgstr "Utskrift pågår" msgstr "Utskrift pågår"
@@ -5928,10 +5940,6 @@ msgstr "Ogiltigt mönster. Använd N, N#K eller en kommaseparerad lista med valf
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Ogiltligt format. Förväntat vector format: \"%1%\"" msgstr "Ogiltligt format. Förväntat vector format: \"%1%\""
# AI Translated
msgid "N/A"
msgstr "Ej tillämpligt"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Systemagenter" msgstr "Systemagenter"
@@ -6964,6 +6972,12 @@ msgstr "Spara Projekt som"
msgid "Save current project as" msgid "Save current project as"
msgstr "Spara nuvarande projekt som" msgstr "Spara nuvarande projekt som"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Importera 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Importera 3MF/STL/STEP/SVG/OBJ/AMF"
@@ -6971,11 +6985,11 @@ msgid "Load a model"
msgstr "Ladda modell" msgstr "Ladda modell"
# AI Translated # AI Translated
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Importera ZIP-arkiv" msgstr "Importera ZIP-arkiv"
# AI Translated # AI Translated
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Läs in modeller som finns i ett ZIP-arkiv" msgstr "Läs in modeller som finns i ett ZIP-arkiv"
msgid "Import Configs" msgid "Import Configs"
@@ -8644,6 +8658,10 @@ msgstr "Anpassa aktuell platta"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Nozzeln %s kan inte skriva ut %s." msgstr "Nozzeln %s kan inte skriva ut %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Att skriva ut filament med blandad färg på en skrivare med en enda extruder kräver täta filamentbyten och rensningar, vilket kan öka spillet och risken för stopp i nozzeln eller avfallsrännan avsevärt."
# AI Translated # AI Translated
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
@@ -8787,6 +8805,26 @@ msgstr "Synkronisera filament listan från AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Ställ in filament som ska användas" msgstr "Ställ in filament som ska användas"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Lägg till blandat filament"
# AI Translated
msgid "Mixed Filament"
msgstr "Blandat filament"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Ta bort det senaste blandade filamentet"
# AI Translated
msgid "Add mixed filament"
msgstr "Lägg till blandat filament"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Det blandade filamentet har ogiltiga eller inkompatibla komponenter. Redigera de berörda posterna igen."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Sök platta, objekt och del." msgstr "Sök platta, objekt och del."
@@ -8794,6 +8832,18 @@ msgstr "Sök platta, objekt och del."
msgid "Pellets" msgid "Pellets"
msgstr "Pellets" msgstr "Pellets"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Det blandade filamentet har trasiga komponentreferenser"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Redigera / Radera / Slå ihop"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Det blandade målfilamentet använder detta fysiska filament som komponent. Sammanslagningen tar bort det fysiska filamentet och kan göra det blandade filamentet ogiltigt. Fortsätt?"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
@@ -8952,8 +9002,14 @@ msgstr "Bekräfta att G-koderna i dessa inställningar är säkra för att förh
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Anpassad inställning" msgstr "Anpassad inställning"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Komponent namnet i STEP filen är inte UTF8 format!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Komponent namnet i STEP filen är inte UTF-8 format!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "På grund av textkodning som inte stöds så kan skräptecken visas!" msgstr "På grund av textkodning som inte stöds så kan skräptecken visas!"
@@ -8974,7 +9030,7 @@ msgstr "Objektet är utan volym"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Objektets fil %s är för litet, det är kanske i meter eller inches.\n" "Objektets fil %s är för litet, det är kanske i meter eller inches.\n"
"Skala om till millimeter?" "Skala om till millimeter?"
@@ -8994,6 +9050,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Objekt i flera delar har upptäckts" msgstr "Objekt i flera delar har upptäckts"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Matchar texturer mot filament"
# AI Translated
msgid "Texture Import Warning"
msgstr "Varning vid texturimport"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Ladda dessa filer som ett enkelt objekt med multipla delar?\n" msgstr "Ladda dessa filer som ett enkelt objekt med multipla delar?\n"
@@ -9223,6 +9287,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Synkronisera nu" msgstr "Synkronisera nu"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Texturimporten misslyckades. Modellen verkar innehålla texturdata, men importprocessen kunde inte slutföras. Modellen importeras endast som geometri."
# AI Translated
msgid "Applying texture colors..."
msgstr "Tillämpar texturfärger..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Uppdaterar 3D-vyn..."
# AI Translated
msgid "Texture colors applied."
msgstr "Texturfärger tillämpade."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Fortsätt med redigerings inställningarna till nytt projekt eller avfärda dem" msgstr "Fortsätt med redigerings inställningarna till nytt projekt eller avfärda dem"
@@ -9364,6 +9444,17 @@ msgstr "Spara beredningen som:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Filen %s har skickats till skrivarens lagringsutrymme och kan visas på skrivaren." msgstr "Filen %s har skickats till skrivarens lagringsutrymme och kan visas på skrivaren."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Publicera"
# AI Translated # AI Translated
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Nozzeltypen är inte angiven. Ange nozzeln och försök igen." msgstr "Nozzeltypen är inte angiven. Ange nozzeln och försök igen."
@@ -10641,6 +10732,10 @@ msgstr "Spiral vas"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Första lagrets filament sekvens" msgstr "Första lagrets filament sekvens"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Filamentlistan innehåller blandade filament. Den anpassade filamentordningen får ingen effekt."
msgid "By Layer" msgid "By Layer"
msgstr "Per lager" msgstr "Per lager"
@@ -10668,9 +10763,6 @@ msgstr "Växla till modell publicerings hemsidan"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Notera: Förberedelserna kan ta flera minuter. Vänligen vänta." msgstr "Notera: Förberedelserna kan ta flera minuter. Vänligen vänta."
msgid "Publish"
msgstr "Publicera"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Publiceringen avbröts" msgstr "Publiceringen avbröts"
@@ -10687,6 +10779,64 @@ msgstr "Laddar upp data"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Växla till hemsidan" msgstr "Växla till hemsidan"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Spara %s som" msgstr "Spara %s som"
@@ -12190,12 +12340,12 @@ msgid "No modifications need to be copied."
msgstr "Inga ändringar behöver kopieras." msgstr "Inga ändringar behöver kopieras."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Kopiera parametrar" msgstr "Kopiera parametrar"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Ändra parametrar för %s" msgstr "Ändra parametrar för %s"
# AI Translated # AI Translated
@@ -12783,33 +12933,6 @@ msgstr "Rensnings volym för filament byte"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Välj filamentfärg" msgstr "Välj filamentfärg"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Liveview i Wayland kräver GStreamers GTK-videosink. Installera insticksmodulen gtksink för GStreamer och starta sedan om OrcaSlicer."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Det gick inte att initiera Waylands GStreamer-videosink. Kontrollera installationen av din GStreamer GTK-insticksmodul."
# AI Translated
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Windows Media Player krävs för den här uppgiften! Vill du aktivera 'Windows Media Player' i ditt operativsystem?"
# AI Translated
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource har inte registrerats korrekt för mediauppspelning! Tryck på Ja för att registrera om den. Du får två frågor"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Saknad BambuSource-komponent registrerad för mediauppspelning! Installera om OrcaSlicer eller sök hjälp i gemenskapen."
# AI Translated
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Du använder en BambuSource från en annan installation, videouppspelningen kanske inte fungerar korrekt! Tryck på Ja för att åtgärda det."
# AI Translated
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Ditt system saknar H.264-kodekar för GStreamer, som krävs för att spela upp video. (Prova att installera paketen gstreamer1.0-plugins-bad eller gstreamer1.0-libav och starta sedan om Orca Slicer.)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Molnagenten är inte tillgänglig. Starta om OrcaSlicer och försök igen." msgstr "Molnagenten är inte tillgänglig. Starta om OrcaSlicer och försök igen."
@@ -13572,6 +13695,10 @@ msgstr "Om du ändå vill skriva ut kan du aktivera alternativet i Inställninga
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Nuvarande inställning har ingen extrudering." msgstr "Nuvarande inställning har ingen extrudering."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Ett blandat filament med gradient används, men 'Underlager med blandad färg' är inaktiverat. Gradienten kommer inte att skrivas ut."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Smooth läge för timelapse stöds inte när ”per objekt” -sekvens är aktiverad." msgstr "Smooth läge för timelapse stöds inte när ”per objekt” -sekvens är aktiverad."
@@ -13614,6 +13741,10 @@ msgstr "Du kan behöva minska modellens storlek eller ändra de aktuella utskrif
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Variabel lagerhöjd stöds inte med organiska support." msgstr "Variabel lagerhöjd stöds inte med organiska support."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Filamentet för prime tornet kan inte vara ett blandat filament."
# AI Translated # AI Translated
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Olika nozzeldiametrar och olika filamentdiametrar kanske inte fungerar bra när prime tornet är aktiverat. Det är mycket experimentellt, så var försiktig." msgstr "Olika nozzeldiametrar och olika filamentdiametrar kanske inte fungerar bra när prime tornet är aktiverat. Det är mycket experimentellt, så var försiktig."
@@ -14012,14 +14143,12 @@ msgstr "mm eller %"
msgid "Other layers" msgid "Other layers"
msgstr "Andra lager" msgstr "Andra lager"
# AI Translated msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Byggplattans temperatur för alla lager utom det första. Värdet 0 innebär att filamentet inte stöder utskrift på Cool Plate SuperTack." msgstr "Byggplattans temperatur för alla lager utom det första. Värdet 0 innebär att filamentet inte stöder utskrift på Cool Plate SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
msgstr "Detta är byggplattans temperatur för lager förutom det första. Värdet 0 betyder att filamentet inte stöder utskrift på Cool Plate." msgstr "Detta är byggplattans temperatur för lager förutom det första. Värdet 0 betyder att filamentet inte stöder utskrift på Cool Plate."
# AI Translated
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Textured Cool Plate."
msgstr "Detta är byggplattans temperatur för lager förutom det första. Värdet 0 betyder att filamentet inte stöder utskrift på Textured Cool Plate." msgstr "Detta är byggplattans temperatur för lager förutom det första. Värdet 0 betyder att filamentet inte stöder utskrift på Textured Cool Plate."
@@ -15534,6 +15663,8 @@ msgstr "Lager tid"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Del kylfläkten kommer att aktiveras för lager vars beräknade tid är kortare än detta värde. Fläkthastigheten interpoleras mellan den lägsta och högsta fläkthastigheten enligt utskriftstiden för lager" msgstr "Del kylfläkten kommer att aktiveras för lager vars beräknade tid är kortare än detta värde. Fläkthastigheten interpoleras mellan den lägsta och högsta fläkthastigheten enligt utskriftstiden för lager"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -15912,6 +16043,62 @@ msgstr "Supportmaterial"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Support material används ofta för att skriva ut support och stödja gränssnittet" msgstr "Support material används ofta för att skriva ut support och stödja gränssnittet"
# AI Translated
msgid "Is mixed filament"
msgstr "Är blandat filament"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Anger om denna filamentplats är ett blandat filament som består av flera fysiska filament"
# AI Translated
msgid "Mixed filament components"
msgstr "Komponenter i blandat filament"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Kommaseparerade index för komponentfilamenten, med start på 1, t.ex. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Underlagerandelar för blandat filament"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Kommaseparerade andelsvärden vars summa är 1.0, t.ex. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Gradient för blandat filament"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Aktiverar gradientläge i Z-riktningen för det blandade filamentets underlager. När det är aktiverat varierar underlagrens andelar linjärt över lagren."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Gradientintervall för blandat filament"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Start- och slutandel för den första komponenten i gradientläge. Kommaseparerat par, t.ex. \"0.10,0.90\" betyder 10% till 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Gradientkurva för blandat filament"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Valfri anpassad kurva i Photoshop-stil som mappar Z-förloppet till den första komponentens andel. Kodas som kontrollpunkter separerade med lodstreck, antingen \"x,y\" (äldre format) eller \"x,y,m_in,m_out\" när tangenten behöver åsidosättas (ett tomt värde eller \"nan\" använder PCHIP-standarden). x ligger i [0,1]; y begränsas till det konfigurerade andelsintervallet, t.ex. \"0,0.15|0.5,0.50|1,0.85\". Om fältet är tomt används det linjära gradient_range i stället."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Gradient per del för blandat filament"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "När gradientläget är aktiverat tillämpas gradienten på varje del i en montering separat i stället för att behandla hela monteringen som ett enda Z-intervall."
# AI Translated # AI Translated
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament utskrivbart" msgstr "Filament utskrivbart"
@@ -17359,6 +17546,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Den maximalt tillåtna utgående kraften för Y-axeln" msgstr "Den maximalt tillåtna utgående kraften för Y-axeln"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -17369,6 +17557,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Maskinbäddens massbelastning på Y-axeln" msgstr "Maskinbäddens massbelastning på Y-axeln"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -17720,8 +17909,8 @@ msgid "Reduce infill retraction"
msgstr "Minska ifyllnads retraktionen" msgstr "Minska ifyllnads retraktionen"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Dra inte tillbaka när förflyttningen är helt i ett utfyllnadsområde. Det betyder att läckage av filament inte kan ses. Detta kan minska tiderna för indragning för komplexa modeller och spara utskriftstid, men gör beredning och generering av G-kod långsammare. Observera att z-hop inte heller utförs i områden där retraktionen hoppas över." msgstr "Dra inte tillbaka när förflyttningen är helt i ett utfyllnadsområde. Det betyder att läckage av filament inte kan ses. Detta kan minska tiderna för indragning för komplexa modeller och spara utskriftstid, men gör beredning och generering av G-kod långsammare. Observera att Z-hop inte heller utförs i områden där retraktionen hoppas över."
# AI Translated # AI Translated
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -17913,7 +18102,7 @@ msgstr "Reduktionsmängd efter avtorkning"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Längden på den snabba reduktionen efter avtorkning, i förhållande till reduktionslängden.\n" "Längden på den snabba reduktionen efter avtorkning, i förhållande till reduktionslängden.\n"
@@ -17968,7 +18157,7 @@ msgstr "När reduktionen utlöses före ett verktygsbyte dras filamentet tillbak
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z-hop-höjd" msgstr "Z-hop-höjd"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "När det är en retraktion lyfts nozzel en aning för att skapa ett spel mellan nozzel och utskriften. Detta förhindrar att nozzel träffar utskriften när den förflyttas. Att använda spirallinjer för att lyfta z kan förhindra strängning" msgstr "När det är en retraktion lyfts nozzel en aning för att skapa ett spel mellan nozzel och utskriften. Detta förhindrar att nozzel träffar utskriften när den förflyttas. Att använda spirallinjer för att lyfta z kan förhindra strängning"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -19168,6 +19357,14 @@ msgstr ""
"\n" "\n"
"Om du anger ett värde i inställningen reduktionsmängd före avtorkning nedan utförs eventuell överskjutande reduktion före avtorkningen, annars utförs den efteråt." "Om du anger ett värde i inställningen reduktionsmängd före avtorkning nedan utförs eventuell överskjutande reduktion före avtorkningen, annars utförs den efteråt."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Underlager med blandad färg"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Aktiverar uppdelning i underlager med blandad färg. När det är aktiverat delas lager som innehåller filament med blandad färg upp i underlager för att skapa färgblandningseffekter."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Avstryknings tornet kan användas för att avlägsna rester på munstycket och stabilisera kammartrycket inuti munstycket för att undvika utseendefel vid utskrift av objekt." msgstr "Avstryknings tornet kan användas för att avlägsna rester på munstycket och stabilisera kammartrycket inuti munstycket för att undvika utseendefel vid utskrift av objekt."
@@ -20441,6 +20638,10 @@ msgstr "Det gick inte att skapa mesh från modellfilen, eller så saknas en gilt
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Den medföljande filen kunde inte läsas eftersom den är tom." msgstr "Den medföljande filen kunde inte läsas eftersom den är tom."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Filformatet är inkompatibelt och kan inte tolkas."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Okänt filformat: indata filen måste ha tillägget .stl, .obj eller .amf(.xml)." msgstr "Okänt filformat: indata filen måste ha tillägget .stl, .obj eller .amf(.xml)."
@@ -22041,19 +22242,19 @@ msgstr "Endast printer med ändringar av inställningar för printer, filament o
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Visa endast filament namnen vid ändringar av filament inställningar." msgstr "Visa endast filament namnen vid ändringar av filament inställningar."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Endast printer namn med inställningar för printer visas, och varje inställning du väljer exporteras som zip-fil." msgstr "Endast printer namn med inställningar för printer visas, och varje inställning du väljer exporteras som zip-fil."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Endast filament namn med inställningar för användar filament visas, \n" "Endast filament namn med inställningar för användar filament visas, \n"
"och alla inställningar för användar filament i varje filament namn du väljer exporteras som en zip-fil." "och alla inställningar för användar filament i varje filament namn du väljer exporteras som en zip-fil."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Endast printer namn med ändrade process inställningar visas, \n" "Endast printer namn med ändrade process inställningar visas, \n"
"och alla användarprocess inställningar i varje printer namn som du väljer exporteras som zip-fil." "och alla användarprocess inställningar i varje printer namn som du väljer exporteras som zip-fil."
@@ -22312,7 +22513,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Vi behöver information för att diagnostisera orsaken till problemet. Se wiki-sidan för en detaljerad guide." msgstr "Vi behöver information för att diagnostisera orsaken till problemet. Se wiki-sidan för en detaljerad guide."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Paketera-knappen samlar projektfilen och loggarna från den aktuella sessionen i en zip-fil." msgstr "Paketera-knappen samlar projektfilen och loggarna från den aktuella sessionen i en zip-fil."
# AI Translated # AI Translated
@@ -22368,7 +22569,7 @@ msgid "Stored logs"
msgstr "Sparade loggar" msgstr "Sparade loggar"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Paketerar alla sparade loggar i en zip-fil." msgstr "Paketerar alla sparade loggar i en zip-fil."
# AI Translated # AI Translated
@@ -22456,7 +22657,7 @@ msgid "Authorizing..."
msgstr "Auktoriserar..." msgstr "Auktoriserar..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Fel. Det går inte att hämta api-token för auktorisering" msgstr "Fel. Det går inte att hämta api-token för auktorisering"
# AI Translated # AI Translated
@@ -23017,8 +23218,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Aktivera smart filamenttilldelning: Tilldela ett filament till flera nozzlar för att maximera besparingen" msgstr "Aktivera smart filamenttilldelning: Tilldela ett filament till flera nozzlar för att maximera besparingen"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Filamentbesparing" msgstr "Filsparande"
# AI Translated # AI Translated
msgid "Don't remind me again" msgid "Don't remind me again"
@@ -23390,6 +23591,15 @@ msgstr "Åtgärden kan inte ångras. Vill du fortsätta?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Hoppar över objekt." msgstr "Hoppar över objekt."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Välj filament" msgstr "Välj filament"
@@ -23491,6 +23701,9 @@ msgstr "Starta om nu"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "INGEN RAMMING ALLS" msgstr "INGEN RAMMING ALLS"
msgid "s"
msgstr "s"
# AI Translated # AI Translated
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Volymetrisk hastighet" msgstr "Volymetrisk hastighet"
@@ -24171,6 +24384,45 @@ msgstr ""
"Undvik vridning\n" "Undvik vridning\n"
"Visste du att när du skriver ut material som är benägna att vrida, såsom ABS, kan en lämplig ökning av värmebäddens temperatur minska sannolikheten för vridning?" "Visste du att när du skriver ut material som är benägna att vrida, såsom ABS, kan en lämplig ökning av värmebäddens temperatur minska sannolikheten för vridning?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Liveview i Wayland kräver GStreamers GTK-videosink. Installera insticksmodulen gtksink för GStreamer och starta sedan om OrcaSlicer."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Det gick inte att initiera Waylands GStreamer-videosink. Kontrollera installationen av din GStreamer GTK-insticksmodul."
# AI Translated
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Windows Media Player krävs för den här uppgiften! Vill du aktivera 'Windows Media Player' i ditt operativsystem?"
# AI Translated
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource har inte registrerats korrekt för mediauppspelning! Tryck på Ja för att registrera om den. Du får två frågor"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Saknad BambuSource-komponent registrerad för mediauppspelning! Installera om OrcaSlicer eller sök hjälp i gemenskapen."
# AI Translated
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Du använder en BambuSource från en annan installation, videouppspelningen kanske inte fungerar korrekt! Tryck på Ja för att åtgärda det."
# AI Translated
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Ditt system saknar H.264-kodekar för GStreamer, som krävs för att spela upp video. (Prova att installera paketen gstreamer1.0-plugins-bad eller gstreamer1.0-libav och starta sedan om Orca Slicer.)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Filamentbesparing"
# AI Translated # AI Translated
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-06-19 13:40+0700\n" "PO-Revision-Date: 2026-06-19 13:40+0700\n"
"Last-Translator: Icezaza\n" "Last-Translator: Icezaza\n"
"Language-Team: Thai\n" "Language-Team: Thai\n"
@@ -2942,6 +2942,10 @@ msgstr "แก้ไข"
msgid "Merge with" msgid "Merge with"
msgstr "รวมกับ" msgstr "รวมกับ"
# AI Translated
msgid "Decompose Color"
msgstr "แยกสี"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "ลบเส้นพลาสติกนี้" msgstr "ลบเส้นพลาสติกนี้"
@@ -3237,6 +3241,10 @@ msgstr "การประกอบ"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "รวมชิ้นส่วนเป็นวัตถุเดียว" msgstr "รวมชิ้นส่วนเป็นวัตถุเดียว"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "การใช้ความสูงเลเยอร์แบบแปรผันร่วมกับซับเลเยอร์สีผสมอาจทำให้คุณภาพการผสมสีไม่ดี"
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "เพิ่มเลเยอร์" msgstr "เพิ่มเลเยอร์"
@@ -4785,7 +4793,7 @@ msgstr ""
"\n" "\n"
"ค่าจะถูกรีเซ็ตเป็น 0" "ค่าจะถูกรีเซ็ตเป็น 0"
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "ผนังเสริมสำรองทำงานได้ไม่ดีเมื่อตั้งค่าความหนาของเปลือกแนวตั้งเป็นทั้งหมด" msgstr "ผนังเสริมสำรองทำงานได้ไม่ดีเมื่อตั้งค่าความหนาของเปลือกแนวตั้งเป็นทั้งหมด"
msgid "" msgid ""
@@ -4831,7 +4839,7 @@ msgstr ""
"ไม่ - รักษาความสูงของชั้นรองรับที่เป็นอิสระ" "ไม่ - รักษาความสูงของชั้นรองรับที่เป็นอิสระ"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height ต้องเล็กกว่า layer_height\n" "seam_slope_start_height ต้องเล็กกว่า layer_height\n"
@@ -4839,7 +4847,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"ความลึกของล็อคควรน้อยกว่าความลึกของผิวหนัง\n" "ความลึกของล็อคควรน้อยกว่าความลึกของผิวหนัง\n"
@@ -4879,6 +4887,9 @@ msgstr ""
"ใช่ - เปลี่ยนการตั้งค่าเหล่านี้และเปิดใช้งานโหมดเกลียวโดยอัตโนมัติ\n" "ใช่ - เปลี่ยนการตั้งค่าเหล่านี้และเปิดใช้งานโหมดเกลียวโดยอัตโนมัติ\n"
"ไม่ - เลิกใช้โหมดเกลียวในครั้งนี้" "ไม่ - เลิกใช้โหมดเกลียวในครั้งนี้"
msgid "N/A"
msgstr "ไม่มี"
msgid "Printing" msgid "Printing"
msgstr "กำลังพิมพ์" msgstr "กำลังพิมพ์"
@@ -5338,9 +5349,6 @@ msgstr "รูปแบบไม่ถูกต้อง ใช้ N, N#K หร
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "รูปแบบไม่ถูกต้อง รูปแบบเวกเตอร์ที่ต้องการ: \"%1%\"" msgstr "รูปแบบไม่ถูกต้อง รูปแบบเวกเตอร์ที่ต้องการ: \"%1%\""
msgid "N/A"
msgstr "ไม่มี"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "เอเจนต์ระบบ" msgstr "เอเจนต์ระบบ"
@@ -6296,16 +6304,22 @@ msgstr "บันทึกโปรเจกต์เป็น"
msgid "Save current project as" msgid "Save current project as"
msgstr "บันทึกโครงการปัจจุบันเป็น" msgstr "บันทึกโครงการปัจจุบันเป็น"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "นำเข้า 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "นำเข้า 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "โหลดโมเดล" msgstr "โหลดโมเดล"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "นำเข้าไฟล์ Zip" msgstr "นำเข้าไฟล์ Zip"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "โหลดโมเดลที่มีอยู่ในไฟล์ zip" msgstr "โหลดโมเดลที่มีอยู่ในไฟล์ zip"
msgid "Import Configs" msgid "Import Configs"
@@ -7807,6 +7821,10 @@ msgstr "ปรับแต่งแผ่นปัจจุบัน"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "หัวฉีด %s ไม่สามารถพิมพ์ %s ได้" msgstr "หัวฉีด %s ไม่สามารถพิมพ์ %s ได้"
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "การพิมพ์เส้นพลาสติกสีผสมบนเครื่องพิมพ์ที่มีชุดดันเส้นเดียวต้องเปลี่ยนเส้นพลาสติกและไล่เส้นบ่อยครั้ง ซึ่งอาจเพิ่มเศษวัสดุและความเสี่ยงที่หัวฉีดหรือช่องทิ้งเศษวัสดุจะอุดตันอย่างมาก"
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "ไม่แนะนำให้ผสม %1% กับ %2% ในการพิมพ์\n" msgstr "ไม่แนะนำให้ผสม %1% กับ %2% ในการพิมพ์\n"
@@ -7932,12 +7950,44 @@ msgstr "ประสานรายการเส้นพลาสติกจ
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "ตั้งค่าเส้นพลาสติกที่จะใช้" msgstr "ตั้งค่าเส้นพลาสติกที่จะใช้"
# AI Translated
msgid "Add Mixed Filament"
msgstr "เพิ่มเส้นพลาสติกผสม"
# AI Translated
msgid "Mixed Filament"
msgstr "เส้นพลาสติกผสม"
# AI Translated
msgid "Remove last mixed filament"
msgstr "ลบเส้นพลาสติกผสมล่าสุด"
# AI Translated
msgid "Add mixed filament"
msgstr "เพิ่มเส้นพลาสติกผสม"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "เส้นพลาสติกผสมมีส่วนประกอบที่ไม่ถูกต้องหรือไม่ตรงกัน กรุณาแก้ไขรายการที่ได้รับผลกระทบอีกครั้ง"
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "ค้นหาจาน วัตถุ และชิ้นส่วน" msgstr "ค้นหาจาน วัตถุ และชิ้นส่วน"
msgid "Pellets" msgid "Pellets"
msgstr "เม็ด" msgstr "เม็ด"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "เส้นพลาสติกผสมมีการอ้างอิงส่วนประกอบที่เสียหาย"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "แก้ไข / ลบ / รวม"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "เส้นพลาสติกผสมปลายทางใช้เส้นพลาสติกจริงนี้เป็นส่วนประกอบ การรวมจะลบเส้นพลาสติกจริงนี้และอาจทำให้เส้นพลาสติกผสมใช้ไม่ได้ ดำเนินการต่อหรือไม่?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "หลังจากเสร็จสิ้นการดำเนินการของคุณ โครงการ %s จะถูกปิดและสร้างโครงการใหม่" msgstr "หลังจากเสร็จสิ้นการดำเนินการของคุณ โครงการ %s จะถูกปิดและสร้างโครงการใหม่"
@@ -8074,8 +8124,14 @@ msgstr "โปรดยืนยันว่ารหัส G ภายในค
msgid "Customized Preset" msgid "Customized Preset"
msgstr "ค่าที่ตั้งไว้ล่วงหน้าที่กำหนดเอง" msgstr "ค่าที่ตั้งไว้ล่วงหน้าที่กำหนดเอง"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "ชื่อของส่วนประกอบภายในไฟล์ STEP ไม่ใช่รูปแบบ UTF8!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "ชื่อของส่วนประกอบภายในไฟล์ STEP ไม่ใช่รูปแบบ UTF-8!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "ชื่ออาจแสดงตัวอักษรขยะ!" msgstr "ชื่ออาจแสดงตัวอักษรขยะ!"
@@ -8096,7 +8152,7 @@ msgstr "ปริมาตรของวัตถุเป็นศูนย์
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"วัตถุจากไฟล์ %s มีขนาดเล็กเกินไป และอาจมีหน่วยเป็นเมตรหรือนิ้ว\n" "วัตถุจากไฟล์ %s มีขนาดเล็กเกินไป และอาจมีหน่วยเป็นเมตรหรือนิ้ว\n"
" คุณต้องการขยายขนาดเป็นมิลลิเมตรหรือไม่?" " คุณต้องการขยายขนาดเป็นมิลลิเมตรหรือไม่?"
@@ -8116,6 +8172,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "ตรวจพบวัตถุที่มีหลายส่วน" msgstr "ตรวจพบวัตถุที่มีหลายส่วน"
# AI Translated
msgid "Matching textures to filaments"
msgstr "กำลังจับคู่พื้นผิวกับเส้นพลาสติก"
# AI Translated
msgid "Texture Import Warning"
msgstr "คำเตือนการนำเข้าพื้นผิว"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "โหลดไฟล์เหล่านี้เป็นออบเจ็กต์เดียวที่มีหลายส่วนใช่ไหม\n" msgstr "โหลดไฟล์เหล่านี้เป็นออบเจ็กต์เดียวที่มีหลายส่วนใช่ไหม\n"
@@ -8326,6 +8390,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "ซิงค์เลย" msgstr "ซิงค์เลย"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "การนำเข้าพื้นผิวล้มเหลว โมเดลดูเหมือนจะมีข้อมูลพื้นผิว แต่ไม่สามารถดำเนินการนำเข้าพื้นผิวจนเสร็จสิ้นได้ โมเดลจะถูกนำเข้าเป็นเรขาคณิตเท่านั้น"
# AI Translated
msgid "Applying texture colors..."
msgstr "กำลังใช้สีพื้นผิว..."
# AI Translated
msgid "Updating 3D view..."
msgstr "กำลังอัปเดตมุมมอง 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "ใช้สีพื้นผิวแล้ว"
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "คุณสามารถเก็บค่าที่ตั้งไว้ล่วงหน้าที่แก้ไขแล้วไว้ในโปรเจ็กต์ใหม่หรือทิ้งก็ได้" msgstr "คุณสามารถเก็บค่าที่ตั้งไว้ล่วงหน้าที่แก้ไขแล้วไว้ในโปรเจ็กต์ใหม่หรือทิ้งก็ได้"
@@ -8457,6 +8537,17 @@ msgstr "บันทึกไฟล์ที่สไลซ์เป็น:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "ไฟล์ %s ถูกส่งไปยังพื้นที่เก็บข้อมูลของเครื่องพิมพ์แล้ว และสามารถดูได้บนเครื่องพิมพ์" msgstr "ไฟล์ %s ถูกส่งไปยังพื้นที่เก็บข้อมูลของเครื่องพิมพ์แล้ว และสามารถดูได้บนเครื่องพิมพ์"
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "เผยแพร่"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "ไม่ได้ตั้งค่าประเภทหัวฉีด โปรดตั้งหัวฉีดแล้วลองอีกครั้ง" msgstr "ไม่ได้ตั้งค่าประเภทหัวฉีด โปรดตั้งหัวฉีดแล้วลองอีกครั้ง"
@@ -9568,6 +9659,10 @@ msgstr "แจกันเกลียว"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "ลำดับเส้นพลาสติกชั้นแรก" msgstr "ลำดับเส้นพลาสติกชั้นแรก"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "รายการเส้นพลาสติกมีเส้นพลาสติกผสมอยู่ ลำดับเส้นพลาสติกที่กำหนดเองจะไม่มีผล"
msgid "By Layer" msgid "By Layer"
msgstr "โดยเลเยอร์" msgstr "โดยเลเยอร์"
@@ -9595,9 +9690,6 @@ msgstr "ข้ามไปที่โมเดลเผยแพร่หน้
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "หมายเหตุ: การเตรียมการอาจใช้เวลาหลายนาที กรุณาอดทน." msgstr "หมายเหตุ: การเตรียมการอาจใช้เวลาหลายนาที กรุณาอดทน."
msgid "Publish"
msgstr "เผยแพร่"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "การเผยแพร่ถูกยกเลิก" msgstr "การเผยแพร่ถูกยกเลิก"
@@ -9613,6 +9705,64 @@ msgstr "กำลังอัพโหลดข้อมูล"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "ข้ามไปที่หน้าเว็บ" msgstr "ข้ามไปที่หน้าเว็บ"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "บันทึก %s เป็น" msgstr "บันทึก %s เป็น"
@@ -10948,12 +11098,12 @@ msgid "No modifications need to be copied."
msgstr "ไม่มีการแก้ไขที่ต้องคัดลอก" msgstr "ไม่มีการแก้ไขที่ต้องคัดลอก"
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "คัดลอกพารามิเตอร์" msgstr "คัดลอกพารามิเตอร์"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "แก้ไขพารามิเตอร์ของ %s" msgstr "แก้ไขพารามิเตอร์ของ %s"
# AI Translated # AI Translated
@@ -11469,27 +11619,6 @@ msgstr "ปริมาณการไล่เส้นชิ่งสำหร
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "กรุณาเลือกสีเส้นพลาสติก" msgstr "กรุณาเลือกสีเส้นพลาสติก"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Native Wayland liveview ต้องใช้ GStreamer GTK video sink โปรดติดตั้งปลั๊กอิน gtksink สำหรับ GStreamer จากนั้นรีสตาร์ท OrcaSlicer"
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "ไม่สามารถเริ่มต้น sink วิดีโอ Wayland GStreamer ดั้งเดิมได้ โปรดตรวจสอบการติดตั้งปลั๊กอิน GStreamer GTK ของคุณ"
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "งานนี้ต้องใช้ Windows Media Player! คุณต้องการเปิดใช้งาน 'Windows Media Player' สำหรับระบบปฏิบัติการของคุณหรือไม่?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource ยังไม่ได้รับการลงทะเบียนอย่างถูกต้องสำหรับการเล่นสื่อ! กดใช่เพื่อลงทะเบียนใหม่ คุณจะได้รับการเลื่อนตำแหน่งสองครั้ง"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "ไม่มีส่วนประกอบ BambuSource ที่ลงทะเบียนสำหรับการเล่นสื่อ! โปรดติดตั้ง OrcaSlicer ใหม่หรือขอความช่วยเหลือจากชุมชน"
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "การใช้ BambuSource จากการติดตั้งอื่น การเล่นวิดีโออาจทำงานไม่ถูกต้อง! กดใช่เพื่อแก้ไข"
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "ระบบของคุณไม่มีตัวแปลงสัญญาณ H.264 สำหรับ GStreamer ซึ่งจำเป็นในการเล่นวิดีโอ (ลองติดตั้งแพ็คเกจ gstreamer1.0-plugins-bad หรือ gstreamer1.0-libav จากนั้นรีสตาร์ท Orca Slicer หรือไม่)"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "ตัวแทนระบบคลาวด์ไม่พร้อมใช้งาน โปรดรีสตาร์ท OrcaSlicer แล้วลองอีกครั้ง" msgstr "ตัวแทนระบบคลาวด์ไม่พร้อมใช้งาน โปรดรีสตาร์ท OrcaSlicer แล้วลองอีกครั้ง"
@@ -12193,6 +12322,10 @@ msgstr "หากคุณยังต้องการพิมพ์ คุ
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "ไม่มีการอัดขึ้นรูปภายใต้การตั้งค่าปัจจุบัน" msgstr "ไม่มีการอัดขึ้นรูปภายใต้การตั้งค่าปัจจุบัน"
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "มีการใช้เส้นพลาสติกผสมแบบเกรเดียนต์ แต่ 'ซับเลเยอร์สีผสม' ถูกปิดใช้งาน เกรเดียนต์จะไม่ถูกพิมพ์"
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "ไม่รองรับโหมดไทม์แลปส์แบบราบรื่นเมื่อเปิดใช้งานลำดับ \"ตามวัตถุ\"" msgstr "ไม่รองรับโหมดไทม์แลปส์แบบราบรื่นเมื่อเปิดใช้งานลำดับ \"ตามวัตถุ\""
@@ -12229,6 +12362,10 @@ msgstr "คุณอาจต้องการลดขนาดแบบจำ
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "ไม่รองรับความสูงของเลเยอร์ที่แปรผันได้ด้วยการรองรับแบบออร์แกนิก" msgstr "ไม่รองรับความสูงของเลเยอร์ที่แปรผันได้ด้วยการรองรับแบบออร์แกนิก"
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "เส้นพลาสติกของ Wipe Tower ไม่สามารถเป็นเส้นพลาสติกผสมได้"
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "เส้นผ่านศูนย์กลางของหัวฉีดที่แตกต่างกันและเส้นผ่านศูนย์กลางของเส้นพลาสติกที่แตกต่างกันอาจทำงานได้ไม่ดีนักเมื่อเปิดใช้งาน Prime Tower ยังเป็นการทดลองอยู่มาก ดังนั้นโปรดดำเนินการด้วยความระมัดระวัง" msgstr "เส้นผ่านศูนย์กลางของหัวฉีดที่แตกต่างกันและเส้นผ่านศูนย์กลางของเส้นพลาสติกที่แตกต่างกันอาจทำงานได้ไม่ดีนักเมื่อเปิดใช้งาน Prime Tower ยังเป็นการทดลองอยู่มาก ดังนั้นโปรดดำเนินการด้วยความระมัดระวัง"
@@ -12578,7 +12715,7 @@ msgstr "มม. หรือ %"
msgid "Other layers" msgid "Other layers"
msgstr "ชั้นอื่นๆ" msgstr "ชั้นอื่นๆ"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "อุณหภูมิฐานพิมพ์สำหรับชั้นต่างๆ ยกเว้นอุณหภูมิเริ่มต้น ค่า 0 หมายความว่าเส้นพลาสติกไม่รองรับการพิมพ์บน Cool Plate SuperTack" msgstr "อุณหภูมิฐานพิมพ์สำหรับชั้นต่างๆ ยกเว้นอุณหภูมิเริ่มต้น ค่า 0 หมายความว่าเส้นพลาสติกไม่รองรับการพิมพ์บน Cool Plate SuperTack"
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13941,6 +14078,8 @@ msgstr "เวลาเลเยอร์"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "พัดลมระบายความร้อนบางส่วนจะถูกเปิดใช้งานสำหรับเลเยอร์ที่เวลาโดยประมาณสั้นกว่าค่านี้ ความเร็วพัดลมจะถูกประมาณค่าระหว่างความเร็วพัดลมขั้นต่ำและสูงสุดตามเวลาการพิมพ์เลเยอร์" msgstr "พัดลมระบายความร้อนบางส่วนจะถูกเปิดใช้งานสำหรับเลเยอร์ที่เวลาโดยประมาณสั้นกว่าค่านี้ ความเร็วพัดลมจะถูกประมาณค่าระหว่างความเร็วพัดลมขั้นต่ำและสูงสุดตามเวลาการพิมพ์เลเยอร์"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "วินาที" msgstr "วินาที"
@@ -14248,6 +14387,62 @@ msgstr "วัสดุส่วนรองรับ"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "วัสดุรองรับมักใช้ในการพิมพ์ส่วนรองรับและอินเทอร์เฟซรองรับ" msgstr "วัสดุรองรับมักใช้ในการพิมพ์ส่วนรองรับและอินเทอร์เฟซรองรับ"
# AI Translated
msgid "Is mixed filament"
msgstr "เป็นเส้นพลาสติกผสมหรือไม่"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "กำหนดว่าช่องเส้นพลาสติกนี้เป็นเส้นพลาสติกผสมที่ประกอบด้วยเส้นพลาสติกจริงหลายเส้นหรือไม่"
# AI Translated
msgid "Mixed filament components"
msgstr "ส่วนประกอบของเส้นพลาสติกผสม"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "ลำดับของเส้นพลาสติกส่วนประกอบโดยเริ่มจาก 1 คั่นด้วยเครื่องหมายจุลภาค เช่น \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "สัดส่วนซับเลเยอร์ของเส้นพลาสติกผสม"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "ค่าสัดส่วนที่คั่นด้วยเครื่องหมายจุลภาคและรวมกันได้ 1.0 เช่น \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "เกรเดียนต์ของเส้นพลาสติกผสม"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "เปิดใช้โหมดเกรเดียนต์ในแนวแกน Z สำหรับซับเลเยอร์ของเส้นพลาสติกผสม เมื่อเปิดใช้ สัดส่วนของซับเลเยอร์จะเปลี่ยนแปลงเชิงเส้นตามเลเยอร์"
# AI Translated
msgid "Mixed filament gradient range"
msgstr "ช่วงเกรเดียนต์ของเส้นพลาสติกผสม"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "สัดส่วนเริ่มต้นและสิ้นสุดของส่วนประกอบแรกในโหมดเกรเดียนต์ เป็นคู่ค่าที่คั่นด้วยเครื่องหมายจุลภาค เช่น \"0.10,0.90\" หมายถึง 10% ถึง 90%"
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "เส้นโค้งเกรเดียนต์ของเส้นพลาสติกผสม"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "เส้นโค้งกำหนดเองสไตล์ Photoshop (ไม่บังคับ) ที่แมปความคืบหน้าในแกน Z กับสัดส่วนของส่วนประกอบแรก เข้ารหัสเป็นจุดควบคุมที่คั่นด้วยเครื่องหมายขีดตั้ง ในรูปแบบ \"x,y\" (รูปแบบเดิม) หรือ \"x,y,m_in,m_out\" เมื่อจำเป็นต้องกำหนดค่าแทนเจนต์เอง (ค่าว่างหรือ \"nan\" หมายถึงใช้ค่าเริ่มต้นของ PCHIP) x อยู่ในช่วง [0,1] ส่วน y จะถูกจำกัดให้อยู่ในช่วงสัดส่วนที่ตั้งค่าไว้ เช่น \"0,0.15|0.5,0.50|1,0.85\" หากเว้นว่างไว้ จะใช้ gradient_range แบบเชิงเส้นแทน"
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "เกรเดียนต์แยกตามชิ้นส่วนของเส้นพลาสติกผสม"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "เมื่อเปิดใช้โหมดเกรเดียนต์ จะใช้เกรเดียนต์กับแต่ละชิ้นส่วนของการประกอบแยกกัน แทนที่จะถือว่าการประกอบทั้งหมดเป็นช่วง Z เดียว"
msgid "Filament printable" msgid "Filament printable"
msgstr "พิมพ์เส้นพลาสติกได้" msgstr "พิมพ์เส้นพลาสติกได้"
@@ -15502,8 +15697,9 @@ msgid "The allowed maximum output force of Y axis"
msgstr "แรงขับออกสูงสุดที่อนุญาตของแกน Y" msgstr "แรงขับออกสูงสุดที่อนุญาตของแกน Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "นิวตัน"
# AI Translated # AI Translated
msgid "Bed mass of the Y axis" msgid "Bed mass of the Y axis"
@@ -15514,8 +15710,9 @@ msgid "The machine bed mass load of Y axis"
msgstr "ภาระมวลฐานของเครื่องบนแกน Y" msgstr "ภาระมวลฐานของเครื่องบนแกน Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "กรัม"
# AI Translated # AI Translated
msgid "The allowed max printed mass" msgid "The allowed max printed mass"
@@ -15827,8 +16024,8 @@ msgstr "จุดเริ่มต้นและจุดสิ้นสุด
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "ลดการดึงกลับในไส้ใน" msgstr "ลดการดึงกลับในไส้ใน"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "อย่าถอยกลับเมื่อการเดินทางอยู่ภายในพื้นที่ที่ไส้ในเข้าไปทั้งหมด นั่นหมายความว่าไม่สามารถมองเห็นการรั่วไหลได้ วิธีนี้จะช่วยลดเวลาในการดึงกลับสำหรับโมเดลที่ซับซ้อนและประหยัดเวลาในการพิมพ์ แต่จะทำให้การแบ่งส่วนและการสร้าง G-code ช้าลง โปรดทราบว่า z-hop จะไม่ดำเนินการในพื้นที่ที่มีการข้ามการถอนกลับ" msgstr "อย่าถอยกลับเมื่อการเดินทางอยู่ภายในพื้นที่ที่ไส้ในเข้าไปทั้งหมด นั่นหมายความว่าไม่สามารถมองเห็นการรั่วไหลได้ วิธีนี้จะช่วยลดเวลาในการดึงกลับสำหรับโมเดลที่ซับซ้อนและประหยัดเวลาในการพิมพ์ แต่จะทำให้การแบ่งส่วนและการสร้าง G-code ช้าลง โปรดทราบว่า Z-hop จะไม่ดำเนินการในพื้นที่ที่มีการข้ามการถอนกลับ"
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "ตัวเลือกนี้จะทำให้อุณหภูมิของชุดดันเส้นที่ไม่ใช้งานลดลงเพื่อป้องกันการไหลซึม" msgstr "ตัวเลือกนี้จะทำให้อุณหภูมิของชุดดันเส้นที่ไม่ใช้งานลดลงเพื่อป้องกันการไหลซึม"
@@ -15997,7 +16194,7 @@ msgstr "ปริมาณการดึงกลับหลังเช็ด
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"ความยาวของการดึงกลับอย่างเร็วหลังเช็ดหัว สัมพันธ์กับความยาวการดึงกลับ\n" "ความยาวของการดึงกลับอย่างเร็วหลังเช็ดหัว สัมพันธ์กับความยาวการดึงกลับ\n"
@@ -16044,7 +16241,7 @@ msgstr "เมื่อการดึงกลับทำงานก่อน
msgid "Z-hop height" msgid "Z-hop height"
msgstr "ความสูงยกแกน Z" msgstr "ความสูงยกแกน Z"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "เมื่อใดก็ตามที่การดึงกลับเสร็จสิ้น หัวฉีดจะถูกยกขึ้นเล็กน้อยเพื่อสร้างระยะห่างระหว่างหัวฉีดและงานพิมพ์ ป้องกันไม่ให้หัวฉีดชนกับงานพิมพ์ขณะเคลื่อนตัว การใช้เส้นเกลียวเพื่อยก Z สามารถป้องกันการร้อยสายได้" msgstr "เมื่อใดก็ตามที่การดึงกลับเสร็จสิ้น หัวฉีดจะถูกยกขึ้นเล็กน้อยเพื่อสร้างระยะห่างระหว่างหัวฉีดและงานพิมพ์ ป้องกันไม่ให้หัวฉีดชนกับงานพิมพ์ขณะเคลื่อนตัว การใช้เส้นเกลียวเพื่อยก Z สามารถป้องกันการร้อยสายได้"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17088,6 +17285,14 @@ msgstr ""
"\n" "\n"
"การตั้งค่าในจำนวนการถอนก่อนการล้างการตั้งค่าด้านล่างจะทำการถอนส่วนที่เกินก่อนการล้าง มิฉะนั้นจะดำเนินการหลังจากนั้น" "การตั้งค่าในจำนวนการถอนก่อนการล้างการตั้งค่าด้านล่างจะทำการถอนส่วนที่เกินก่อนการล้าง มิฉะนั้นจะดำเนินการหลังจากนั้น"
# AI Translated
msgid "Mixed color sublayer"
msgstr "ซับเลเยอร์สีผสม"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "เปิดใช้การแบ่งซับเลเยอร์สีผสม เมื่อเปิดใช้ เลเยอร์ที่มีเส้นพลาสติกสีผสมจะถูกแบ่งเป็นซับเลเยอร์เพื่อให้เกิดเอฟเฟกต์การผสมสี"
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Wipe Tower สามารถใช้เพื่อทำความสะอาดสิ่งตกค้างบนหัวฉีด และทำให้แรงดันในห้องภายในหัวฉีดคงที่ เพื่อหลีกเลี่ยงข้อบกพร่องในลักษณะที่ปรากฏเมื่อพิมพ์วัตถุ" msgstr "Wipe Tower สามารถใช้เพื่อทำความสะอาดสิ่งตกค้างบนหัวฉีด และทำให้แรงดันในห้องภายในหัวฉีดคงที่ เพื่อหลีกเลี่ยงข้อบกพร่องในลักษณะที่ปรากฏเมื่อพิมพ์วัตถุ"
@@ -18171,6 +18376,10 @@ msgstr "การประสานไฟล์โมเดลล้มเหล
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "ไม่สามารถอ่านไฟล์ที่ให้มาได้เนื่องจากไฟล์ว่างเปล่า" msgstr "ไม่สามารถอ่านไฟล์ที่ให้มาได้เนื่องจากไฟล์ว่างเปล่า"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "รูปแบบไฟล์ไม่รองรับ จึงไม่สามารถอ่านข้อมูลได้"
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "รูปแบบไฟล์ที่ไม่รู้จัก ไฟล์อินพุตต้องมีนามสกุล .stl, .obj, .amf(.xml)" msgstr "รูปแบบไฟล์ที่ไม่รู้จัก ไฟล์อินพุตต้องมีนามสกุล .stl, .obj, .amf(.xml)"
@@ -19632,19 +19841,19 @@ msgstr "แสดงเฉพาะชื่อเครื่องพิมพ
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "แสดงเฉพาะชื่อเส้นพลาสติกที่มีการเปลี่ยนแปลงการตั้งค่าล่วงหน้าของเส้นพลาสติก" msgstr "แสดงเฉพาะชื่อเส้นพลาสติกที่มีการเปลี่ยนแปลงการตั้งค่าล่วงหน้าของเส้นพลาสติก"
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "เฉพาะชื่อเครื่องพิมพ์ที่มีการตั้งค่าเครื่องพิมพ์ล่วงหน้าของผู้ใช้เท่านั้นที่จะแสดง และการตั้งค่าล่วงหน้าแต่ละรายการที่คุณเลือกจะถูกส่งออกเป็นไฟล์ ZIP" msgstr "เฉพาะชื่อเครื่องพิมพ์ที่มีการตั้งค่าเครื่องพิมพ์ล่วงหน้าของผู้ใช้เท่านั้นที่จะแสดง และการตั้งค่าล่วงหน้าแต่ละรายการที่คุณเลือกจะถูกส่งออกเป็นไฟล์ ZIP"
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"เฉพาะชื่อเส้นพลาสติกที่มีการตั้งค่าล่วงหน้าของเส้นพลาสติกผู้ใช้เท่านั้นที่จะถูกแสดง \n" "เฉพาะชื่อเส้นพลาสติกที่มีการตั้งค่าล่วงหน้าของเส้นพลาสติกผู้ใช้เท่านั้นที่จะถูกแสดง \n"
"และค่าฟิลาเมนต์ของผู้ใช้ทั้งหมดที่กำหนดไว้ล่วงหน้าในแต่ละชื่อฟิลาเมนต์ที่คุณเลือกจะถูกส่งออกเป็นไฟล์ ZIP" "และค่าฟิลาเมนต์ของผู้ใช้ทั้งหมดที่กำหนดไว้ล่วงหน้าในแต่ละชื่อฟิลาเมนต์ที่คุณเลือกจะถูกส่งออกเป็นไฟล์ ZIP"
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"เฉพาะชื่อเครื่องพิมพ์ที่มีการตั้งค่าล่วงหน้าของกระบวนการที่เปลี่ยนแปลงเท่านั้นที่จะปรากฏขึ้น \n" "เฉพาะชื่อเครื่องพิมพ์ที่มีการตั้งค่าล่วงหน้าของกระบวนการที่เปลี่ยนแปลงเท่านั้นที่จะปรากฏขึ้น \n"
"และกระบวนการของผู้ใช้ที่ตั้งไว้ล่วงหน้าในชื่อเครื่องพิมพ์แต่ละเครื่องที่คุณเลือกจะถูกส่งออกเป็นไฟล์ ZIP" "และกระบวนการของผู้ใช้ที่ตั้งไว้ล่วงหน้าในชื่อเครื่องพิมพ์แต่ละเครื่องที่คุณเลือกจะถูกส่งออกเป็นไฟล์ ZIP"
@@ -19885,7 +20094,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "เราต้องการข้อมูลเพื่อวินิจฉัยแหล่งที่มาของปัญหา ตรวจสอบหน้า wiki สำหรับคำแนะนำโดยละเอียด" msgstr "เราต้องการข้อมูลเพื่อวินิจฉัยแหล่งที่มาของปัญหา ตรวจสอบหน้า wiki สำหรับคำแนะนำโดยละเอียด"
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "ปุ่ม Pack จะรวบรวมไฟล์โปรเจกต์และบันทึกของเซสชันปัจจุบันลงในไฟล์ zip" msgstr "ปุ่ม Pack จะรวบรวมไฟล์โปรเจกต์และบันทึกของเซสชันปัจจุบันลงในไฟล์ zip"
# AI Translated # AI Translated
@@ -19941,7 +20150,7 @@ msgid "Stored logs"
msgstr "บันทึกที่จัดเก็บ" msgstr "บันทึกที่จัดเก็บ"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "รวมบันทึกที่จัดเก็บทั้งหมดลงในไฟล์ zip" msgstr "รวมบันทึกที่จัดเก็บทั้งหมดลงในไฟล์ zip"
# AI Translated # AI Translated
@@ -20021,7 +20230,7 @@ msgstr "ไม่พบประเภทเครื่องพิมพ์
msgid "Authorizing..." msgid "Authorizing..."
msgstr "กำลังอนุญาต..." msgstr "กำลังอนุญาต..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "ข้อผิดพลาด ไม่สามารถรับโทเคน API สำหรับการอนุญาตได้" msgstr "ข้อผิดพลาด ไม่สามารถรับโทเคน API สำหรับการอนุญาตได้"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20473,8 +20682,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "เปิดใช้การกำหนดเส้นพลาสติกอัจฉริยะ: กำหนดเส้นพลาสติกหนึ่งชนิดให้กับหัวฉีดหลายตัวเพื่อประหยัดสูงสุด" msgstr "เปิดใช้การกำหนดเส้นพลาสติกอัจฉริยะ: กำหนดเส้นพลาสติกหนึ่งชนิดให้กับหัวฉีดหลายตัวเพื่อประหยัดสูงสุด"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "การประหยัดเส้นพลาสติก" msgstr "การบันทึกไฟล์"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "ไม่ต้องเตือนฉันอีก" msgstr "ไม่ต้องเตือนฉันอีก"
@@ -20760,6 +20969,15 @@ msgstr "การทำงานนี้ไม่สามารถย้อน
msgid "Skipping objects." msgid "Skipping objects."
msgstr "ข้ามวัตถุ" msgstr "ข้ามวัตถุ"
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "เลือกเส้นพลาสติก" msgstr "เลือกเส้นพลาสติก"
@@ -20839,6 +21057,9 @@ msgstr "เริ่มใหม่ตอนนี้"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "ไม่มีการกระแทกเลย" msgstr "ไม่มีการกระแทกเลย"
msgid "s"
msgstr "วินาที"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "ความเร็วปริมาตร" msgstr "ความเร็วปริมาตร"
@@ -21463,6 +21684,39 @@ msgstr ""
"หลีกเลี่ยงการบิดเบี้ยว\n" "หลีกเลี่ยงการบิดเบี้ยว\n"
"คุณรู้หรือไม่ว่าเมื่อพิมพ์วัสดุที่มีแนวโน้มที่จะเกิดการบิดเบี้ยว เช่น ABS การเพิ่มอุณหภูมิฐานพิมพ์อย่างเหมาะสมสามารถลดความน่าจะเป็นของการบิดเบี้ยวได้" "คุณรู้หรือไม่ว่าเมื่อพิมพ์วัสดุที่มีแนวโน้มที่จะเกิดการบิดเบี้ยว เช่น ABS การเพิ่มอุณหภูมิฐานพิมพ์อย่างเหมาะสมสามารถลดความน่าจะเป็นของการบิดเบี้ยวได้"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Native Wayland liveview ต้องใช้ GStreamer GTK video sink โปรดติดตั้งปลั๊กอิน gtksink สำหรับ GStreamer จากนั้นรีสตาร์ท OrcaSlicer"
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "ไม่สามารถเริ่มต้น sink วิดีโอ Wayland GStreamer ดั้งเดิมได้ โปรดตรวจสอบการติดตั้งปลั๊กอิน GStreamer GTK ของคุณ"
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "งานนี้ต้องใช้ Windows Media Player! คุณต้องการเปิดใช้งาน 'Windows Media Player' สำหรับระบบปฏิบัติการของคุณหรือไม่?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource ยังไม่ได้รับการลงทะเบียนอย่างถูกต้องสำหรับการเล่นสื่อ! กดใช่เพื่อลงทะเบียนใหม่ คุณจะได้รับการเลื่อนตำแหน่งสองครั้ง"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "ไม่มีส่วนประกอบ BambuSource ที่ลงทะเบียนสำหรับการเล่นสื่อ! โปรดติดตั้ง OrcaSlicer ใหม่หรือขอความช่วยเหลือจากชุมชน"
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "การใช้ BambuSource จากการติดตั้งอื่น การเล่นวิดีโออาจทำงานไม่ถูกต้อง! กดใช่เพื่อแก้ไข"
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "ระบบของคุณไม่มีตัวแปลงสัญญาณ H.264 สำหรับ GStreamer ซึ่งจำเป็นในการเล่นวิดีโอ (ลองติดตั้งแพ็คเกจ gstreamer1.0-plugins-bad หรือ gstreamer1.0-libav จากนั้นรีสตาร์ท Orca Slicer หรือไม่)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "การประหยัดเส้นพลาสติก"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-08-21 23:18+0300\n" "PO-Revision-Date: 2026-08-21 23:18+0300\n"
"Last-Translator: GlauTech\n" "Last-Translator: GlauTech\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2969,6 +2969,10 @@ msgstr "Düzenle"
msgid "Merge with" msgid "Merge with"
msgstr "Şununla birleştir" msgstr "Şununla birleştir"
# AI Translated
msgid "Decompose Color"
msgstr "Rengi ayrıştır"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Bu filamenti sil" msgstr "Bu filamenti sil"
@@ -3269,6 +3273,10 @@ msgstr "Birleştir"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Parçaları bir nesnede birleştir" msgstr "Parçaları bir nesnede birleştir"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Değişken katman yüksekliğinin karışık renk alt katmanı ile birlikte kullanılması renk karışımının kalitesini düşürebilir."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Katman ekle" msgstr "Katman ekle"
@@ -4847,7 +4855,7 @@ msgstr ""
"\n" "\n"
"Değer 0'a sıfırlanacaktır." "Değer 0'a sıfırlanacaktır."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Alternatif ekstra duvar, dikey kabuk kalınlığının Tümü olarak ayarlandığından emin olunduğunda iyi çalışmaz." msgstr "Alternatif ekstra duvar, dikey kabuk kalınlığının Tümü olarak ayarlandığından emin olunduğunda iyi çalışmaz."
msgid "" msgid ""
@@ -4893,7 +4901,7 @@ msgstr ""
"HAYIR - Bağımsız Destek Katmanı Yüksekliğini Koruyun" "HAYIR - Bağımsız Destek Katmanı Yüksekliğini Koruyun"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height, layer_height değerinden küçük olmalıdır.\n" "seam_slope_start_height, layer_height değerinden küçük olmalıdır.\n"
@@ -4901,7 +4909,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Kilit derinliği cilt derinliğinden daha küçük olmalıdır.\n" "Kilit derinliği cilt derinliğinden daha küçük olmalıdır.\n"
@@ -4941,6 +4949,10 @@ msgstr ""
"Evet - Bu ayarları değiştirin ve spiral modunu otomatik olarak etkinleştirin\n" "Evet - Bu ayarları değiştirin ve spiral modunu otomatik olarak etkinleştirin\n"
"Hayır - Bu sefer spiral modunu kullanmaktan vazgeçin" "Hayır - Bu sefer spiral modunu kullanmaktan vazgeçin"
# AI Translated
msgid "N/A"
msgstr "Yok"
msgid "Printing" msgid "Printing"
msgstr "Baskı" msgstr "Baskı"
@@ -5400,10 +5412,6 @@ msgstr "Geçersiz kalıp. N, N#K veya giriş başına isteğe bağlı #K ile vir
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Geçersiz format. Beklenen vektör formatı: \"%1%\"" msgstr "Geçersiz format. Beklenen vektör formatı: \"%1%\""
# AI Translated
msgid "N/A"
msgstr "Yok"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Sistem aracıları" msgstr "Sistem aracıları"
@@ -6364,16 +6372,22 @@ msgstr "Projeyi farklı kaydet"
msgid "Save current project as" msgid "Save current project as"
msgstr "Mevcut projeyi farklı kaydet" msgstr "Mevcut projeyi farklı kaydet"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "3MF/STL/STEP/SVG/OBJ/AMF'yi içe aktar" msgstr "3MF/STL/STEP/SVG/OBJ/AMF'yi içe aktar"
msgid "Load a model" msgid "Load a model"
msgstr "Model yükle" msgstr "Model yükle"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Zip Arşivini İçe Aktar" msgstr "Zip Arşivini İçe Aktar"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Zip arşivindeki modelleri yükle" msgstr "Zip arşivindeki modelleri yükle"
msgid "Import Configs" msgid "Import Configs"
@@ -7897,6 +7911,10 @@ msgstr "Mevcut plakayı özelleştir"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%s püskürtme ucu %s'yi yazdıramıyor." msgstr "%s püskürtme ucu %s'yi yazdıramıyor."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Karışık renkli filamenti tek ekstruderli bir yazıcıda basmak sık filament değişimi ve yıkama gerektirir; bu da atığı ve nozul ya da atık oluğu tıkanma riskini önemli ölçüde artırabilir."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Yazdırmada %1% ile %2%'nin karıştırılması önerilmez.\n" msgstr "Yazdırmada %1% ile %2%'nin karıştırılması önerilmez.\n"
@@ -8022,12 +8040,44 @@ msgstr "Filament listesini AMS'den senkronize edin"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Kullanılacak filamentleri ayarla" msgstr "Kullanılacak filamentleri ayarla"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Karışık Filament Ekle"
# AI Translated
msgid "Mixed Filament"
msgstr "Karışık Filament"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Son karışık filamenti kaldır"
# AI Translated
msgid "Add mixed filament"
msgstr "Karışık filament ekle"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Karışık filamentte geçersiz veya uyumsuz bileşenler var. Lütfen etkilenen girdileri yeniden düzenleyin."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Arama plakası, nesne ve parça." msgstr "Arama plakası, nesne ve parça."
msgid "Pellets" msgid "Pellets"
msgstr "Peletler" msgstr "Peletler"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Karışık filamentin bileşen referansları bozuk"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Düzenle / Sil / Birleştir"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Hedef karışık filament bu fiziksel filamenti bileşen olarak kullanıyor. Birleştirme bu fiziksel filamenti kaldıracak ve karışık filamenti geçersiz kılabilir. Devam edilsin mi?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "İşleminizi tamamladıktan sonra %s projesi kapatılacak ve yeni bir proje oluşturulacak." msgstr "İşleminizi tamamladıktan sonra %s projesi kapatılacak ve yeni bir proje oluşturulacak."
@@ -8171,8 +8221,14 @@ msgstr "Lütfen bu ön ayarlar içindeki G-code'larının makineye herhangi bir
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Özel Ayar" msgstr "Özel Ayar"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Step dosyasındaki bileşenlerin adı UTF8 formatında değil!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Step dosyasındaki bileşenlerin adı UTF-8 formatında değil!"
# AI Translated # AI Translated
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -8194,10 +8250,10 @@ msgstr "Cismin hacmi sıfır"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"%s dosyasındaki nesne çok küçük; metre veya inç cinsinden olabilir.\n" "%s dosyasındaki nesne çok küçük; metre veya inç cinsinden olabilir.\n"
" Milimetreye ölçeklendirmek istiyor musunuz?" "Milimetreye ölçeklendirmek istiyor musunuz?"
msgid "Object too small" msgid "Object too small"
msgstr "Nesne çok küçük" msgstr "Nesne çok küçük"
@@ -8214,6 +8270,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Çok parçalı nesne algılandı" msgstr "Çok parçalı nesne algılandı"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Dokular filamentlerle eşleştiriliyor"
# AI Translated
msgid "Texture Import Warning"
msgstr "Doku İçe Aktarma Uyarısı"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Bu dosyalar birden fazla parçadan oluşan tek bir nesne olarak mı yüklensin?\n" msgstr "Bu dosyalar birden fazla parçadan oluşan tek bir nesne olarak mı yüklensin?\n"
@@ -8425,6 +8489,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Şimdi senkronize et" msgstr "Şimdi senkronize et"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Doku içe aktarılamadı. Model doku verisi içeriyor gibi görünüyor, ancak içe aktarma işlemi tamamlanamadı. Model yalnızca geometri olarak içe aktarılacak."
# AI Translated
msgid "Applying texture colors..."
msgstr "Doku renkleri uygulanıyor..."
# AI Translated
msgid "Updating 3D view..."
msgstr "3D görünüm güncelleniyor..."
# AI Translated
msgid "Texture colors applied."
msgstr "Doku renkleri uygulandı."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Değiştirilen ön ayarları yeni projede tutabilir veya silebilirsiniz" msgstr "Değiştirilen ön ayarları yeni projede tutabilir veya silebilirsiniz"
@@ -8556,6 +8636,17 @@ msgstr "Dilimlenmiş dosyayı şu şekilde kaydedin:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "%s dosyası yazıcının depolama alanına gönderildi ve yazıcıda görüntülenebiliyor." msgstr "%s dosyası yazıcının depolama alanına gönderildi ve yazıcıda görüntülenebiliyor."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Yayınla"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Nozul tipi ayarlanmamış. Lütfen nozulu ayarlayın ve tekrar deneyin." msgstr "Nozul tipi ayarlanmamış. Lütfen nozulu ayarlayın ve tekrar deneyin."
@@ -9712,6 +9803,10 @@ msgstr "Spiral vazo"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "İlk katman filament dizisi" msgstr "İlk katman filament dizisi"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Filament listesi karışık filamentler içeriyor. Özel filament sırası etkili olmayacak."
msgid "By Layer" msgid "By Layer"
msgstr "Katmana göre" msgstr "Katmana göre"
@@ -9739,9 +9834,6 @@ msgstr "Model yayınlama web sayfasına git"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Not: Hazırlık birkaç dakika sürebilir. Lütfen sabırlı olun." msgstr "Not: Hazırlık birkaç dakika sürebilir. Lütfen sabırlı olun."
msgid "Publish"
msgstr "Yayınla"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Yayınlama iptal edildi" msgstr "Yayınlama iptal edildi"
@@ -9757,6 +9849,64 @@ msgstr "Veriler yükleniyor"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Web sayfasına atla" msgstr "Web sayfasına atla"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "%s'yi farklı kaydet" msgstr "%s'yi farklı kaydet"
@@ -11128,12 +11278,12 @@ msgid "No modifications need to be copied."
msgstr "Kopyalanması gereken değişiklik yok." msgstr "Kopyalanması gereken değişiklik yok."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Parametreleri kopyala" msgstr "Parametreleri kopyala"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "%s parametrelerini değiştir" msgstr "%s parametrelerini değiştir"
# AI Translated # AI Translated
@@ -11653,29 +11803,6 @@ msgstr "Filament değişimi için temizleme hacmi"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Lütfen filament rengini seçin" msgstr "Lütfen filament rengini seçin"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Yerel Wayland canlı görüntüsü, GStreamer GTK video alıcısını gerektirir. Lütfen GStreamer için gtksink eklentisini yükleyin ve ardından OrcaSlicer'ı yeniden başlatın."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Yerel Wayland GStreamer video alıcısı başlatılamadı. Lütfen GStreamer GTK eklentisi kurulumunuzu denetleyin."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Bu görev için Windows Media Player gereklidir! İşletim sisteminiz için Windows Media Playerı etkinleştirmek istiyor musunuz?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource medya oynatımı için doğru şekilde kaydedilmemiş! Yeniden kaydetmek için Evete basın"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Medya oynatma için kayıtlı BambuSource bileşeni eksik! Lütfen OrcaSlicer'ı yeniden yükleyin veya topluluk yardımı isteyin."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Farklı bir kurulumdan bir BambuSource kullanıyorsunuz, video oynatma doğru çalışmayabilir! Düzeltmek için Evete basın."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Sisteminizde video oynatmak için gerekli olan GStreamer H.264 codec bileşenleri eksik. (gstreamer1.0-plugins-bad veya gstreamer1.0-libav paketlerini kurmayı deneyin, ardından Orca Slicerı yeniden başlatın)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Bulut aracısı kullanılamıyor. Lütfen OrcaSlicer'ı yeniden başlatıp yeniden deneyin." msgstr "Bulut aracısı kullanılamıyor. Lütfen OrcaSlicer'ı yeniden başlatıp yeniden deneyin."
@@ -12401,6 +12528,10 @@ msgstr "Yine de yazdırmak istiyorsanız Tercihler / Denetim / Dilimleme / Karı
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Mevcut ayarlarda ekstrüzyon yok." msgstr "Mevcut ayarlarda ekstrüzyon yok."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Gradyanlı bir karışık filament kullanılıyor ancak 'Karışık renk alt katmanı' devre dışı. Gradyan basılmayacak."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "\"Nesneye göre\" dizisi etkinleştirildiğinde, hızlandırılmış çekimin yumuşak modu desteklenmez." msgstr "\"Nesneye göre\" dizisi etkinleştirildiğinde, hızlandırılmış çekimin yumuşak modu desteklenmez."
@@ -12437,6 +12568,10 @@ msgstr "Modelinizin boyutunu küçültmek veya mevcut yazdırma ayarlarını de
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Değişken katman yüksekliği Organik desteklerle desteklenmez." msgstr "Değişken katman yüksekliği Organik desteklerle desteklenmez."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Silme kulesi filamenti karışık filament olamaz."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Farklı püskürtme ucu çapları ve farklı filament çapları, ana kule etkinleştirildiğinde iyi çalışmayabilir. Oldukça deneysel olduğundan lütfen dikkatli ilerleyin." msgstr "Farklı püskürtme ucu çapları ve farklı filament çapları, ana kule etkinleştirildiğinde iyi çalışmayabilir. Oldukça deneysel olduğundan lütfen dikkatli ilerleyin."
@@ -12805,7 +12940,7 @@ msgstr "mm veya %"
msgid "Other layers" msgid "Other layers"
msgstr "Diğer katmanlar" msgstr "Diğer katmanlar"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "İlk katman hariç tüm katmanlar için yatak sıcaklığı. 0 değeri, filamentin Cool Plate SuperTack üzerine baskıyı desteklemediği anlamına gelir." msgstr "İlk katman hariç tüm katmanlar için yatak sıcaklığı. 0 değeri, filamentin Cool Plate SuperTack üzerine baskıyı desteklemediği anlamına gelir."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14193,6 +14328,8 @@ msgstr "Katman süresi"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Tahmini süresi bu değerden kısa olan katlarda parça soğutma fanı devreye girecektir. Fan hızı, katman yazdırma süresine göre minimum ve maksimum fan hızları arasında enterpole edilir." msgstr "Tahmini süresi bu değerden kısa olan katlarda parça soğutma fanı devreye girecektir. Fan hızı, katman yazdırma süresine göre minimum ve maksimum fan hızları arasında enterpole edilir."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14502,6 +14639,62 @@ msgstr "Destek malzemesi"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Destek malzemesi yaygın olarak destek ve destek arayüzünü yazdırmak için kullanılır." msgstr "Destek malzemesi yaygın olarak destek ve destek arayüzünü yazdırmak için kullanılır."
# AI Translated
msgid "Is mixed filament"
msgstr "Karışık filament mi"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Bu filament yuvasının birden fazla fiziksel filamentten oluşan bir karışık filament olup olmadığını belirler"
# AI Translated
msgid "Mixed filament components"
msgstr "Karışık filament bileşenleri"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Bileşen filamentlerin virgülle ayrılmış, 1'den başlayan sıra numaraları; ör. \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Karışık filament alt katman oranları"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Toplamı 1.0 olan, virgülle ayrılmış oran değerleri; ör. \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Karışık filament gradyanı"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Karışık filamentin alt katmanları için Z yönünde gradyan modunu etkinleştirir. Etkinleştirildiğinde alt katman oranları katmanlar boyunca doğrusal olarak değişir."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Karışık filament gradyan aralığı"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Gradyan modunda ilk bileşenin başlangıç ve bitiş oranları. Virgülle ayrılmış çift; ör. \"0.10,0.90\" %10 ile %90 arasını ifade eder."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Karışık filament gradyan eğrisi"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Z ilerlemesini ilk bileşenin oranına eşleyen, isteğe bağlı Photoshop tarzı özel eğri. Dikey çizgiyle ayrılmış kontrol noktaları olarak kodlanır; \"x,y\" (eski) veya teğetin geçersiz kılınması gerektiğinde \"x,y,m_in,m_out\" biçiminde (boş değer ya da \"nan\" varsayılan PCHIP değerini kullanır). x [0,1] aralığındadır; y yapılandırılmış oran aralığına kırpılır; ör. \"0,0.15|0.5,0.50|1,0.85\". Boş bırakıldığında bunun yerine doğrusal gradient_range kullanılır."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Karışık filamentte parça başına gradyan"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Gradyan modu etkinleştirildiğinde, gradyan montajın tamamı tek bir Z aralığı olarak ele alınmak yerine montajdaki her parçaya bağımsız olarak uygulanır."
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament yazdırılabilir" msgstr "Filament yazdırılabilir"
@@ -15793,6 +15986,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Y ekseninin izin verilen maksimum çıkış kuvveti" msgstr "Y ekseninin izin verilen maksimum çıkış kuvveti"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15805,6 +15999,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Y ekseninin makine yatağı kütle yükü" msgstr "Y ekseninin makine yatağı kütle yükü"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16129,8 +16324,8 @@ msgid "Reduce infill retraction"
msgstr "Dolguda geri çekmeyi azalt" msgstr "Dolguda geri çekmeyi azalt"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Hareket tamamen dolgu alanı içindeyken geri çekme yapılmaz. Bu, sızıntının görülemeyeceği anlamına gelir. Bu, karmaşık modellerde geri çekme sayısını azaltabilir ve yazdırma süresinden tasarruf sağlayabilir, ancak dilimlemeyi ve G-code oluşturmayı yavaşlatır. Geri çekmenin atlandığı alanlarda z-hop'un da uygulanmadığını unutmayın." msgstr "Hareket tamamen dolgu alanı içindeyken geri çekme yapılmaz. Bu, sızıntının görülemeyeceği anlamına gelir. Bu, karmaşık modellerde geri çekme sayısını azaltabilir ve yazdırma süresinden tasarruf sağlayabilir, ancak dilimlemeyi ve G-code oluşturmayı yavaşlatır. Geri çekmenin atlandığı alanlarda Z-hop'un da uygulanmadığını unutmayın."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "Bu seçenek sızıntıyı önlemek için aktif olmayan ekstrüderlerin sıcaklığını düşürecektir." msgstr "Bu seçenek sızıntıyı önlemek için aktif olmayan ekstrüderlerin sıcaklığını düşürecektir."
@@ -16305,7 +16500,7 @@ msgstr "Silme sonrası geri çekme miktarı"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Silme sonrasındaki hızlı geri çekmenin uzunluğu; geri çekme uzunluğuna göredir.\n" "Silme sonrasındaki hızlı geri çekmenin uzunluğu; geri çekme uzunluğuna göredir.\n"
@@ -16352,7 +16547,7 @@ msgstr "Takım değişiminden önce geri çekme tetiklendiğinde, filament belir
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z-Sıçrama yüksekliği" msgstr "Z-Sıçrama yüksekliği"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Geri çekme işlemi her yapıldığında, nozul ile baskı arasında açıklık oluşturmak için nozul biraz kaldırılır. Hareket halindeyken nozulun baskıya çarpmasını önler. Z'yi kaldırmak için spiral çizgi kullanmak çekmeyi önleyebilir." msgstr "Geri çekme işlemi her yapıldığında, nozul ile baskı arasında açıklık oluşturmak için nozul biraz kaldırılır. Hareket halindeyken nozulun baskıya çarpmasını önler. Z'yi kaldırmak için spiral çizgi kullanmak çekmeyi önleyebilir."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17417,6 +17612,14 @@ msgstr ""
"\n" "\n"
"Aşağıdaki silme ayarından önce geri çekme miktarına bir değer ayarlamak, silme işleminden önce aşırı geri çekme işlemini gerçekleştirecektir, aksi takdirde silme işleminden sonra gerçekleştirilecektir." "Aşağıdaki silme ayarından önce geri çekme miktarına bir değer ayarlamak, silme işleminden önce aşırı geri çekme işlemini gerçekleştirecektir, aksi takdirde silme işleminden sonra gerçekleştirilecektir."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Karışık renk alt katmanı"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Karışık renk alt katmanlarına bölmeyi etkinleştirir. Etkinleştirildiğinde, karışık renkli filament içeren katmanlar renk karışımı efektleri elde etmek için alt katmanlara bölünür."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Temizleme kulesi, nesneleri yazdırırken görünüm kusurlarını önlemek amacıyla nozul üzerindeki kalıntıları temizlemek ve nozul içindeki oda basıncını dengelemek için kullanılabilir." msgstr "Temizleme kulesi, nesneleri yazdırırken görünüm kusurlarını önlemek amacıyla nozul üzerindeki kalıntıları temizlemek ve nozul içindeki oda basıncını dengelemek için kullanılabilir."
@@ -18155,10 +18358,10 @@ msgid "Allow 3MF with newer version to be sliced."
msgstr "Daha yeni sürüme sahip 3mfnin dilimlenmesine izin ver." msgstr "Daha yeni sürüme sahip 3mfnin dilimlenmesine izin ver."
msgid "Current Z-hop" msgid "Current Z-hop"
msgstr "Mevcut z-hop" msgstr "Mevcut Z-hop"
msgid "Contains Z-hop present at the beginning of the custom G-code block." msgid "Contains Z-hop present at the beginning of the custom G-code block."
msgstr "Özel G-code bloğunun başında bulunan z-hop'u içerir." msgstr "Özel G-code bloğunun başında bulunan Z-hop'u içerir."
msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back." msgid "Position of the extruder at the beginning of the custom G-code block. If the custom G-code travels somewhere else, it should write to this variable so OrcaSlicer knows where it travels from when it gets control back."
msgstr "Ekstruderin özel G-code bloğunun başlangıcındaki konumu. Özel G-code başka bir yere seyahat ederse, Slicer'ın kontrolü geri aldığında nereden seyahat ettiğini bilmesi için bu değişkene yazması gerekir." msgstr "Ekstruderin özel G-code bloğunun başlangıcındaki konumu. Özel G-code başka bir yere seyahat ederse, Slicer'ın kontrolü geri aldığında nereden seyahat ettiğini bilmesi için bu değişkene yazması gerekir."
@@ -18505,6 +18708,10 @@ msgstr "Bir model dosyasının meshlenmesi başarısız oldu veya geçerli bir
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Seçilen dosya boş olduğundan okunamıyor." msgstr "Seçilen dosya boş olduğundan okunamıyor."
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Dosya biçimi uyumsuz olduğundan ayrıştırılamıyor."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Bilinmeyen dosya formatı. Giriş dosyası .stl, .obj, .amf(.xml) uzantılı olmalıdır." msgstr "Bilinmeyen dosya formatı. Giriş dosyası .stl, .obj, .amf(.xml) uzantılı olmalıdır."
@@ -20003,19 +20210,19 @@ msgstr "Yazıcı adlarını yalnızca yazıcı, filament ve işlem ön ayarları
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Filament adlarını yalnızca filament ön ayarlarında yapılan değişikliklerle görüntüleyin." msgstr "Filament adlarını yalnızca filament ön ayarlarında yapılan değişikliklerle görüntüleyin."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Yalnızca kullanıcı yazıcı ön ayarlarına sahip yazıcı adları görüntülenecek ve seçtiğiniz her ön ayar zip olarak dışa aktarılacaktır." msgstr "Yalnızca kullanıcı yazıcı ön ayarlarına sahip yazıcı adları görüntülenecek ve seçtiğiniz her ön ayar zip olarak dışa aktarılacaktır."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Yalnızca kullanıcı filamenti ön ayarlarına sahip filament adları \n" "Yalnızca kullanıcı filamenti ön ayarlarına sahip filament adları \n"
"görüntülenecek ve seçtiğiniz her filament adındaki tüm kullanıcı filamenti ön ayarları zip olarak dışa aktarılacaktır." "görüntülenecek ve seçtiğiniz her filament adındaki tüm kullanıcı filamenti ön ayarları zip olarak dışa aktarılacaktır."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Yalnızca işlem ön ayarları değiştirilen yazıcı adları görüntülenecek \n" "Yalnızca işlem ön ayarları değiştirilen yazıcı adları görüntülenecek \n"
"ve seçtiğiniz her yazıcı adındaki tüm kullanıcı işlem ön ayarları zip olarak dışa aktarılacaktır." "ve seçtiğiniz her yazıcı adındaki tüm kullanıcı işlem ön ayarları zip olarak dışa aktarılacaktır."
@@ -20260,7 +20467,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Sorunun kaynağını teşhis etmek için bilgiye ihtiyacımız var. Ayrıntılı kılavuz için wiki sayfasına bakın." msgstr "Sorunun kaynağını teşhis etmek için bilgiye ihtiyacımız var. Ayrıntılı kılavuz için wiki sayfasına bakın."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Paketle düğmesi, geçerli oturumun proje dosyasını ve günlüklerini bir zip dosyasında toplar." msgstr "Paketle düğmesi, geçerli oturumun proje dosyasını ve günlüklerini bir zip dosyasında toplar."
# AI Translated # AI Translated
@@ -20316,7 +20523,7 @@ msgid "Stored logs"
msgstr "Saklanan günlükler" msgstr "Saklanan günlükler"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Saklanan tüm günlükleri bir zip dosyasında paketler." msgstr "Saklanan tüm günlükleri bir zip dosyasında paketler."
# AI Translated # AI Translated
@@ -20402,7 +20609,7 @@ msgid "Authorizing..."
msgstr "Yetkilendiriliyor..." msgstr "Yetkilendiriliyor..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Hata. Yetkilendirme için api belirteci alınamıyor" msgstr "Hata. Yetkilendirme için api belirteci alınamıyor"
# AI Translated # AI Translated
@@ -20859,8 +21066,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Akıllı filament atamasını etkinleştir: Tasarrufu en üst düzeye çıkarmak için bir filamenti birden çok nozula atayın" msgstr "Akıllı filament atamasını etkinleştir: Tasarrufu en üst düzeye çıkarmak için bir filamenti birden çok nozula atayın"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Filament Tasarrufu" msgstr "Dosya Kaydetme"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Bana bir daha hatırlatma" msgstr "Bana bir daha hatırlatma"
@@ -21189,6 +21396,15 @@ msgstr "Bu eylem geri alınamaz. Devam etmek?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Nesneleri atlama." msgstr "Nesneleri atlama."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Filament Seçin" msgstr "Filament Seçin"
@@ -21268,6 +21484,9 @@ msgstr "Şimdi Yeniden Başlat"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "HİÇBİR ŞEKİLDE ÇARPMA YOK" msgstr "HİÇBİR ŞEKİLDE ÇARPMA YOK"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Hacimsel hız" msgstr "Hacimsel hız"
@@ -21829,7 +22048,8 @@ msgstr ""
"Baskılarınızı plakalara ayırın\n" "Baskılarınızı plakalara ayırın\n"
"Çok sayıda parçası olan bir modeli baskıya hazır ayrı kalıplara bölebileceğinizi biliyor muydunuz? Bu, tüm parçaları takip etme sürecini basitleştirecektir." "Çok sayıda parçası olan bir modeli baskıya hazır ayrı kalıplara bölebileceğinizi biliyor muydunuz? Bu, tüm parçaları takip etme sürecini basitleştirecektir."
#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer Height] #: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer
#: Height]
msgid "" msgid ""
"Speed up your print with Adaptive Layer Height\n" "Speed up your print with Adaptive Layer Height\n"
"Did you know that you can print a model even faster by using the Adaptive Layer Height option? Check it out!" "Did you know that you can print a model even faster by using the Adaptive Layer Height option? Check it out!"
@@ -21902,7 +22122,8 @@ msgstr ""
"Gücü artırın\n" "Gücü artırın\n"
"Modelin gücünü artırmak için daha fazla duvar halkası ve daha yüksek seyrek dolgu yoğunluğu kullanabileceğinizi biliyor muydunuz?" "Modelin gücünü artırmak için daha fazla duvar halkası ve daha yüksek seyrek dolgu yoğunluğu kullanabileceğinizi biliyor muydunuz?"
#: resources/data/hints.ini: [hint:When do you need to print with the printer door opened] #: resources/data/hints.ini: [hint:When do you need to print with the printer
#: door opened]
msgid "" msgid ""
"When do you need to print with the printer door opened?\n" "When do you need to print with the printer door opened?\n"
"Did you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature? There is more info about this in the Wiki." "Did you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature? There is more info about this in the Wiki."
@@ -21918,6 +22139,41 @@ msgstr ""
"Eğilmeyi önleyin\n" "Eğilmeyi önleyin\n"
"ABS gibi bükülmeye yatkın malzemelere baskı yaparken, ısıtma yatağı sıcaklığının uygun şekilde arttırılmasının bükülme olasılığını azaltabileceğini biliyor muydunuz?" "ABS gibi bükülmeye yatkın malzemelere baskı yaparken, ısıtma yatağı sıcaklığının uygun şekilde arttırılmasının bükülme olasılığını azaltabileceğini biliyor muydunuz?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Yerel Wayland canlı görüntüsü, GStreamer GTK video alıcısını gerektirir. Lütfen GStreamer için gtksink eklentisini yükleyin ve ardından OrcaSlicer'ı yeniden başlatın."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Yerel Wayland GStreamer video alıcısı başlatılamadı. Lütfen GStreamer GTK eklentisi kurulumunuzu denetleyin."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Bu görev için Windows Media Player gereklidir! İşletim sisteminiz için Windows Media Playerı etkinleştirmek istiyor musunuz?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource medya oynatımı için doğru şekilde kaydedilmemiş! Yeniden kaydetmek için Evete basın"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Medya oynatma için kayıtlı BambuSource bileşeni eksik! Lütfen OrcaSlicer'ı yeniden yükleyin veya topluluk yardımı isteyin."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Farklı bir kurulumdan bir BambuSource kullanıyorsunuz, video oynatma doğru çalışmayabilir! Düzeltmek için Evete basın."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Sisteminizde video oynatmak için gerekli olan GStreamer H.264 codec bileşenleri eksik. (gstreamer1.0-plugins-bad veya gstreamer1.0-libav paketlerini kurmayı deneyin, ardından Orca Slicerı yeniden başlatın)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Filament Tasarrufu"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: orcaslicerua\n" "Project-Id-Version: orcaslicerua\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-07-17 16:25+0300\n" "PO-Revision-Date: 2026-07-17 16:25+0300\n"
"Last-Translator: Andrij Mizyk <andm1zyk@proton.me>\n" "Last-Translator: Andrij Mizyk <andm1zyk@proton.me>\n"
"Language-Team: Ukrainian\n" "Language-Team: Ukrainian\n"
@@ -2906,6 +2906,10 @@ msgstr "Змінити"
msgid "Merge with" msgid "Merge with"
msgstr "Обʼєднати з" msgstr "Обʼєднати з"
# AI Translated
msgid "Decompose Color"
msgstr "Розкласти колір"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Видалити цей філамент" msgstr "Видалити цей філамент"
@@ -3197,6 +3201,10 @@ msgstr "Збірка"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Обʼєднати частини в обʼєкт" msgstr "Обʼєднати частини в обʼєкт"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Використання змінної висоти шару разом із підшаром змішаного кольору може погіршити якість змішування кольорів."
msgid "Add layers" msgid "Add layers"
msgstr "Додати шари" msgstr "Додати шари"
@@ -4781,7 +4789,7 @@ msgstr ""
"\n" "\n"
"Значення буде скинуто на 0." "Значення буде скинуто на 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Чергування додаткової стінки не працює добре, якщо для параметра \"Забезпечити товщину вертикальної оболонки\" встановлено значення \"Всі\"." msgstr "Чергування додаткової стінки не працює добре, якщо для параметра \"Забезпечити товщину вертикальної оболонки\" встановлено значення \"Всі\"."
msgid "" msgid ""
@@ -4827,7 +4835,7 @@ msgstr ""
"НІ - Залишити незалежну висоту шарів підтримки" "НІ - Залишити незалежну висоту шарів підтримки"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height має бути менше висоти шару.\n" "seam_slope_start_height має бути менше висоти шару.\n"
@@ -4836,7 +4844,7 @@ msgstr ""
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Глибина зчеплення має бути меншою за глибину оболонки.\n" "Глибина зчеплення має бути меншою за глибину оболонки.\n"
@@ -4879,6 +4887,9 @@ msgstr ""
"Так змінити ці налаштування та автоматично включити режим спіральна ваза\n" "Так змінити ці налаштування та автоматично включити режим спіральна ваза\n"
"Ні - цього разу відмовитися від використання режиму спіральна ваза" "Ні - цього разу відмовитися від використання режиму спіральна ваза"
msgid "N/A"
msgstr "Н/Д"
msgid "Printing" msgid "Printing"
msgstr "Друк" msgstr "Друк"
@@ -5350,9 +5361,6 @@ msgstr "Некоректний шаблон. Використовуйте N, N#K
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Невірний формат. Очікуваний векторний формат: \"%1%\"" msgstr "Невірний формат. Очікуваний векторний формат: \"%1%\""
msgid "N/A"
msgstr "Н/Д"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Системні агенти" msgstr "Системні агенти"
@@ -6333,16 +6341,22 @@ msgstr "Зберегти проєкт як"
msgid "Save current project as" msgid "Save current project as"
msgstr "Зберегти поточний проєкт як" msgstr "Зберегти поточний проєкт як"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Імпорт 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Імпорт 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Завантажте модель" msgstr "Завантажте модель"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Імпорт Zip-архіву" msgstr "Імпорт Zip-архіву"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Завантажити моделі, що містяться в zip-архіві" msgstr "Завантажити моделі, що містяться в zip-архіві"
msgid "Import Configs" msgid "Import Configs"
@@ -7891,6 +7905,10 @@ msgstr "Пристосувати поточну пластину"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Сопло %s не може друкувати %s." msgstr "Сопло %s не може друкувати %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Друк філаменту змішаного кольору на принтері з одним екструдером потребує частої зміни філаменту та промивок, що може суттєво збільшити кількість відходів і ризик засмічення сопла або жолоба для відходів."
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "Змішування %1% з %2% в друці не рекомендується.\n" msgstr "Змішування %1% з %2% в друці не рекомендується.\n"
@@ -8019,12 +8037,44 @@ msgstr "Синхронізувати список ниток з AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Встановити філаменти для використання" msgstr "Встановити філаменти для використання"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Додати змішаний філамент"
# AI Translated
msgid "Mixed Filament"
msgstr "Змішаний філамент"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Вилучити останній змішаний філамент"
# AI Translated
msgid "Add mixed filament"
msgstr "Додати змішаний філамент"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "У змішаного філаменту недійсні або невідповідні компоненти. Будь ласка, відредагуйте відповідні записи ще раз."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Пошук пластини, об’єкта і деталі." msgstr "Пошук пластини, об’єкта і деталі."
msgid "Pellets" msgid "Pellets"
msgstr "Гранули" msgstr "Гранули"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "У змішаного філаменту пошкоджені посилання на компоненти"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Редагувати / Видалити / Обʼєднати"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Цільовий змішаний філамент використовує цей фізичний філамент як компонент. Обʼєднання вилучить цей фізичний філамент і може зробити змішаний філамент недійсним. Продовжити?"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
@@ -8179,9 +8229,15 @@ msgstr "Будь ласка, підтвердьте, що G-коди в цих
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Пристосований пресет" msgstr "Пристосований пресет"
msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
# AI Translated # AI Translated
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Назви компонентів усередині файлу STEP не у форматі UTF8!" msgstr "Назви компонентів усередині файлу STEP не у форматі UTF-8!"
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
msgstr "Через непідтримуване кодування тексту можуть зʼявлятися непотрібні символи!" msgstr "Через непідтримуване кодування тексту можуть зʼявлятися непотрібні символи!"
@@ -8202,7 +8258,7 @@ msgstr "Обʼєм обʼєкта дорівнює нулю"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Обʼєкт із файлу %s занадто малий, можливо, в метрах або дюймах.\n" "Обʼєкт із файлу %s занадто малий, можливо, в метрах або дюймах.\n"
"Ви хочете масштабувати до міліметрів?" "Ви хочете масштабувати до міліметрів?"
@@ -8223,6 +8279,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Виявлено обʼєкт, що складається з кількох частин" msgstr "Виявлено обʼєкт, що складається з кількох частин"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Зіставлення текстур із філаментами"
# AI Translated
msgid "Texture Import Warning"
msgstr "Попередження під час імпорту текстури"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Завантажити ці файли як єдиний обʼєкт з кількома частинами?\n" msgstr "Завантажити ці файли як єдиний обʼєкт з кількома частинами?\n"
@@ -8433,6 +8497,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Синхронізувати зараз" msgstr "Синхронізувати зараз"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Не вдалося імпортувати текстуру. Схоже, модель містить дані текстури, але завершити процес імпорту не вдалося. Модель буде імпортовано лише як геометрію."
# AI Translated
msgid "Applying texture colors..."
msgstr "Застосування кольорів текстури..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Оновлення 3D-вигляду..."
# AI Translated
msgid "Texture colors applied."
msgstr "Кольори текстури застосовано."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Ви можете зберегти змінені пресети у новому проекті або відмовитися від них" msgstr "Ви можете зберегти змінені пресети у новому проекті або відмовитися від них"
@@ -8567,6 +8647,17 @@ msgstr "Зберегти нарізаний файл як:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "Файл %s надіслано до памʼяті принтера та доступний для перегляду на принтері." msgstr "Файл %s надіслано до памʼяті принтера та доступний для перегляду на принтері."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Публікувати"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Тип сопла не встановлений. Будь ласка, оберіть сопло та спробуйте ще раз." msgstr "Тип сопла не встановлений. Будь ласка, оберіть сопло та спробуйте ще раз."
@@ -9714,6 +9805,10 @@ msgstr "Спіральна ваза"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Послідовність філаменту першого шару" msgstr "Послідовність філаменту першого шару"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Список філаментів містить змішані філаменти. Власна послідовність філаментів не діятиме."
msgid "By Layer" msgid "By Layer"
msgstr "По шарах" msgstr "По шарах"
@@ -9742,9 +9837,6 @@ msgstr "Перейти на веб-сторінку публікації мод
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Примітка. Підготовка може тривати кілька хвилин. Будь ласка, будьте терплячі." msgstr "Примітка. Підготовка може тривати кілька хвилин. Будь ласка, будьте терплячі."
msgid "Publish"
msgstr "Публікувати"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Публікація скасована" msgstr "Публікація скасована"
@@ -9760,6 +9852,64 @@ msgstr "Відвантаження даних"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Перейти на вебсторінку" msgstr "Перейти на вебсторінку"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Зберегти %s як" msgstr "Зберегти %s як"
@@ -11173,12 +11323,12 @@ msgstr "%s: %s"
msgid "No modifications need to be copied." msgid "No modifications need to be copied."
msgstr "Немає змін для копіювання." msgstr "Немає змін для копіювання."
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Параметри копіювання" msgstr "Параметри копіювання"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Змінити параметри %s" msgstr "Змінити параметри %s"
# AI Translated # AI Translated
@@ -11717,30 +11867,6 @@ msgstr "Обʼєми промивки для зміни філаменту"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Будь ласка, виберіть колір філаменту" msgstr "Будь ласка, виберіть колір філаменту"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Нативний перегляд у Wayland потребує відеоприймача GStreamer GTK. Встановіть плагін gtksink для GStreamer, а потім перезапустіть OrcaSlicer."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Не вдалося ініціалізувати нативний відеоприймач GStreamer для Wayland. Перевірте встановлення плагіна GStreamer GTK."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Для виконання цього завдання потрібен Windows Media Player! Бажаєте увімкнути 'Windows Media Player' для вашої операційної системи?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource не було правильно зареєстровано для відтворення медіафайлів! Натисніть \"Так\", щоб зареєструвати його повторно. Вас буде сповіщено двічі"
# AI Translated
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Відсутній компонент BambuSource, зареєстрований для відтворення медіа! Перевстановіть OrcaSlicer або зверніться по допомогу до спільноти."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Використовується BambuSource з іншої інсталяції, відтворення відео може працювати неправильно! Натисніть \"Так\", щоб виправити це."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Вашій системі бракує кодеків H.264 для GStreamer, які необхідні для відтворення відео. (Спробуйте встановити пакети gstreamer1.0-plugins-bad або gstreamer1.0-libav, а потім перезапустіть Orca Slicer?)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Хмарний агент недоступний. Перезапустіть OrcaSlicer і спробуйте ще раз." msgstr "Хмарний агент недоступний. Перезапустіть OrcaSlicer і спробуйте ще раз."
@@ -12462,6 +12588,10 @@ msgstr "Якщо ви все одно хочете друкувати, може
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Немає екструзій під час поточних налаштувань." msgstr "Немає екструзій під час поточних налаштувань."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Використовується змішаний філамент із градієнтом, але параметр «Підшар змішаного кольору» вимкнено. Градієнт не буде надруковано."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Плавний режим таймлапсу не підтримується, коли послідовність \"по обʼєкт\" увімкнено." msgstr "Плавний режим таймлапсу не підтримується, коли послідовність \"по обʼєкт\" увімкнено."
@@ -12502,6 +12632,10 @@ msgstr "Можливо, ви захочете зменшити розмір мо
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Змінна висота шару не підтримується з Органічними підтримками." msgstr "Змінна висота шару не підтримується з Органічними підтримками."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Філамент вежі протирання не може бути змішаним філаментом."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Різні діаметри сопел та різні діаметри філаменту можуть працювати некоректно коли ввімкнена підготовча вежа. Це експериментальна функція, тому використовуйте її з обережністю." msgstr "Різні діаметри сопел та різні діаметри філаменту можуть працювати некоректно коли ввімкнена підготовча вежа. Це експериментальна функція, тому використовуйте її з обережністю."
@@ -12881,8 +13015,7 @@ msgstr "мм або %"
msgid "Other layers" msgid "Other layers"
msgstr "Інші шари" msgstr "Інші шари"
# AI Translated msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Температура столу для всіх шарів, крім першого. Значення 0 означає, що філамент не підтримує друк на Cool Plate SuperTack." msgstr "Температура столу для всіх шарів, крім першого. Значення 0 означає, що філамент не підтримує друк на Cool Plate SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14296,8 +14429,10 @@ msgstr "Час шару"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Вентилятор охолодження деталей вмикається для шарів, розрахунковий час яких менший за це значення. Швидкість вентилятора інтерполюється між мінімальною та максимальною швидкістю вентилятора відповідно до часу друку шару" msgstr "Вентилятор охолодження деталей вмикається для шарів, розрахунковий час яких менший за це значення. Швидкість вентилятора інтерполюється між мінімальною та максимальною швидкістю вентилятора відповідно до часу друку шару"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "c" msgstr "с"
msgid "Default color" msgid "Default color"
msgstr "Типовий колір" msgstr "Типовий колір"
@@ -14627,6 +14762,62 @@ msgstr "Матеріал підтримки"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Допоміжний матеріал зазвичай використовується для друку підтримки" msgstr "Допоміжний матеріал зазвичай використовується для друку підтримки"
# AI Translated
msgid "Is mixed filament"
msgstr "Є змішаним філаментом"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Визначає, чи є цей слот філаменту змішаним філаментом, складеним з кількох фізичних філаментів"
# AI Translated
msgid "Mixed filament components"
msgstr "Компоненти змішаного філаменту"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Розділені комами індекси філаментів-компонентів, починаючи з 1, наприклад \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Частки підшарів змішаного філаменту"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Розділені комами значення часток, сума яких дорівнює 1.0, наприклад \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Градієнт змішаного філаменту"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Вмикає режим градієнта за віссю Z для підшарів змішаного філаменту. Коли увімкнено, частки підшарів змінюються лінійно від шару до шару."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Діапазон градієнта змішаного філаменту"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Початкова та кінцева частки першого компонента в режимі градієнта. Пара значень через кому, наприклад \"0.10,0.90\" означає від 10% до 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Крива градієнта змішаного філаменту"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Необовʼязкова власна крива у стилі Photoshop, що зіставляє поступ за віссю Z із часткою першого компонента. Записується як контрольні точки, розділені вертикальними рисками, у вигляді \"x,y\" (застарілий формат) або \"x,y,m_in,m_out\", коли потрібно перевизначити дотичну (порожнє значення або \"nan\" означає типове значення PCHIP). x належить до [0,1]; y обмежується налаштованим діапазоном часток, наприклад \"0,0.15|0.5,0.50|1,0.85\". Якщо поле порожнє, замість цього використовується лінійний gradient_range."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Градієнт змішаного філаменту для кожної частини"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Коли режим градієнта увімкнено, градієнт застосовується до кожної частини збірки окремо, а не до всієї збірки як до єдиного діапазону Z."
msgid "Filament printable" msgid "Filament printable"
msgstr "Філамент придатний для друку" msgstr "Філамент придатний для друку"
@@ -15973,8 +16164,9 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Максимальна дозволена вихідна сила осі Y" msgstr "Максимальна дозволена вихідна сила осі Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "Н"
msgid "Bed mass of the Y axis" msgid "Bed mass of the Y axis"
msgstr "Маса столу осі Y" msgstr "Маса столу осі Y"
@@ -15982,6 +16174,8 @@ msgstr "Маса столу осі Y"
msgid "The machine bed mass load of Y axis" msgid "The machine bed mass load of Y axis"
msgstr "Маса навантаження столу машини на вісь Y" msgstr "Маса навантаження столу машини на вісь Y"
# AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "г" msgstr "г"
@@ -16313,8 +16507,8 @@ msgid "Reduce infill retraction"
msgstr "Зменшити втягування заповнення" msgstr "Зменшити втягування заповнення"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Не втягувати, коли переміщення повністю проходить у зоні заповнення. Це означає, що витікання не буде видно. Це може зменшити кількість втягувань для складних моделей і заощадити час друку, але сповільнює нарізку та генерацію G-коду. Зверніть увагу, що z-hop також не виконується в зонах, де втягування пропускається." msgstr "Не втягувати, коли переміщення повністю проходить у зоні заповнення. Це означає, що витікання не буде видно. Це може зменшити кількість втягувань для складних моделей і заощадити час друку, але сповільнює нарізку та генерацію G-коду. Зверніть увагу, що Z-hop також не виконується в зонах, де втягування пропускається."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "Цей параметр знижує температуру неактивних екструдерів, щоб запобігти підтіканням." msgstr "Цей параметр знижує температуру неактивних екструдерів, щоб запобігти підтіканням."
@@ -16489,7 +16683,7 @@ msgstr "Величина втягування після протирання"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Довжина швидкого втягування після протирання, відносно довжини втягування.\n" "Довжина швидкого втягування після протирання, відносно довжини втягування.\n"
@@ -16538,7 +16732,7 @@ msgstr "Коли втягування спрацьовує перед зміно
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Висота Z-підйому" msgstr "Висота Z-підйому"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Під час кожного втягування сопло трохи піднімається, щоб створити зазор між соплом та об’єктом друку. Це запобігає зіткненню сопла з об’єктом друку під час переміщення. Використання спіральної лінії підняття по осі Z може запобігти появі ниток" msgstr "Під час кожного втягування сопло трохи піднімається, щоб створити зазор між соплом та об’єктом друку. Це запобігає зіткненню сопла з об’єктом друку під час переміщення. Використання спіральної лінії підняття по осі Z може запобігти появі ниток"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17622,6 +17816,14 @@ msgstr ""
"\n" "\n"
"Якщо встановити значення у параметрі \"Кількість втягування перед витиранням\" нижче, надлишкове втягування буде виконано перед витиранням, інакше воно буде виконано після нього." "Якщо встановити значення у параметрі \"Кількість втягування перед витиранням\" нижче, надлишкове втягування буде виконано перед витиранням, інакше воно буде виконано після нього."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Підшар змішаного кольору"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Вмикає розбиття на підшари змішаного кольору. Коли увімкнено, шари, що містять філаменти змішаного кольору, розбиваються на підшари для отримання ефекту змішування кольорів."
# AI Translated # AI Translated
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Вежа протирання може використовуватися для очищення залишків на соплі та стабілізації тиску в камері всередині сопла, щоб уникнути дефектів зовнішнього вигляду під час друку обʼєктів." msgstr "Вежа протирання може використовуватися для очищення залишків на соплі та стабілізації тиску в камері всередині сопла, щоб уникнути дефектів зовнішнього вигляду під час друку обʼєктів."
@@ -18728,6 +18930,10 @@ msgstr "Не вдалося побудувати сітку файлу моде
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "Наданий файл не вдалося прочитати, оскільки він порожній" msgstr "Наданий файл не вдалося прочитати, оскільки він порожній"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Формат файлу несумісний, і його не вдається прочитати."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Невідомий формат файлу: вхідний файл повинен мати розширення .stl, .obj або .amf (.xml)." msgstr "Невідомий формат файлу: вхідний файл повинен мати розширення .stl, .obj або .amf (.xml)."
@@ -20244,12 +20450,12 @@ msgstr "Показувати лише назви принтерів зі змі
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Показувати лише назви філаментів зі змінами у пресетах філаменту." msgstr "Показувати лише назви філаментів зі змінами у пресетах філаменту."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Будуть відображатися лише назви принтерів з пресетами принтера користувача, і кожен обраний пресет буде експортовано у форматі ZIP." msgstr "Будуть відображатися лише назви принтерів з пресетами принтера користувача, і кожен обраний пресет буде експортовано у форматі ZIP."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Будуть відображатися лише назви філаментів з налаштуваннями філаменту користувача, \n" "Будуть відображатися лише назви філаментів з налаштуваннями філаменту користувача, \n"
"і всі налаштування філаменту користувача для кожної вибраної назви філаменту \n" "і всі налаштування філаменту користувача для кожної вибраної назви філаменту \n"
@@ -20257,7 +20463,7 @@ msgstr ""
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Будуть відображатися лише назви принтерів зі зміненими налаштуваннями процесу, \n" "Будуть відображатися лише назви принтерів зі зміненими налаштуваннями процесу, \n"
"і всі налаштування процесу користувача для кожної вибраної назви принтера будуть \n" "і всі налаштування процесу користувача для кожної вибраної назви принтера будуть \n"
@@ -20499,7 +20705,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Нам потрібна інформація для встановлення джерела проблеми. Докладний посібник дивіться на сторінці wiki." msgstr "Нам потрібна інформація для встановлення джерела проблеми. Докладний посібник дивіться на сторінці wiki."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Кнопка «Пакувати» збирає файл проєкту та журнали поточного сеансу в один zip-файл." msgstr "Кнопка «Пакувати» збирає файл проєкту та журнали поточного сеансу в один zip-файл."
# AI Translated # AI Translated
@@ -20543,7 +20749,7 @@ msgstr "Рівень журналу"
msgid "Stored logs" msgid "Stored logs"
msgstr "Збережені логи" msgstr "Збережені логи"
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Запаковує всі збережені логи у файл zip." msgstr "Запаковує всі збережені логи у файл zip."
msgid "Profiles" msgid "Profiles"
@@ -20610,7 +20816,7 @@ msgstr "Тип принтера не знайдено, будь ласка ви
msgid "Authorizing..." msgid "Authorizing..."
msgstr "Авторизування..." msgstr "Авторизування..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Помилка. Не вдалося отримати api-токен для авторизування" msgstr "Помилка. Не вдалося отримати api-токен для авторизування"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -21074,8 +21280,9 @@ msgstr "Вилучено"
msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings" msgid "Enable smart filament assign: Assign one filament to multiple nozzles to maximize savings"
msgstr "Дозволити розумне призначення філаменту: Призначте одну нитку до кількох сопел, щоб максимально заощадити" msgstr "Дозволити розумне призначення філаменту: Призначте одну нитку до кількох сопел, щоб максимально заощадити"
msgid "Fila Saving" # AI Translated
msgstr "Збереження філаменту" msgid "File Saving"
msgstr "Збереження файлу"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "Не нагадувати мені більше" msgstr "Не нагадувати мені більше"
@@ -21366,6 +21573,15 @@ msgstr "Дію не можливо завершити. Продовжити?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Пропускання обʼєктів." msgstr "Пропускання обʼєктів."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "Вибрати філамент" msgstr "Вибрати філамент"
@@ -21445,6 +21661,9 @@ msgstr "Перезапустити зараз"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "ВЗАГАЛІ БЕЗ УТРАМБУВАННЯ" msgstr "ВЗАГАЛІ БЕЗ УТРАМБУВАННЯ"
msgid "s"
msgstr "c"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Обʼємна швидкість" msgstr "Обʼємна швидкість"
@@ -22081,6 +22300,40 @@ msgstr ""
"Уникнення деформації\n" "Уникнення деформації\n"
"Чи знаєте ви, що при друку матеріалами, схильними до деформації, такими як ABS, відповідне підвищення температури столу може зменшити ймовірність деформації?" "Чи знаєте ви, що при друку матеріалами, схильними до деформації, такими як ABS, відповідне підвищення температури столу може зменшити ймовірність деформації?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Нативний перегляд у Wayland потребує відеоприймача GStreamer GTK. Встановіть плагін gtksink для GStreamer, а потім перезапустіть OrcaSlicer."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Не вдалося ініціалізувати нативний відеоприймач GStreamer для Wayland. Перевірте встановлення плагіна GStreamer GTK."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Для виконання цього завдання потрібен Windows Media Player! Бажаєте увімкнути 'Windows Media Player' для вашої операційної системи?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource не було правильно зареєстровано для відтворення медіафайлів! Натисніть \"Так\", щоб зареєструвати його повторно. Вас буде сповіщено двічі"
# AI Translated
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Відсутній компонент BambuSource, зареєстрований для відтворення медіа! Перевстановіть OrcaSlicer або зверніться по допомогу до спільноти."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Використовується BambuSource з іншої інсталяції, відтворення відео може працювати неправильно! Натисніть \"Так\", щоб виправити це."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Вашій системі бракує кодеків H.264 для GStreamer, які необхідні для відтворення відео. (Спробуйте встановити пакети gstreamer1.0-plugins-bad або gstreamer1.0-libav, а потім перезапустіть Orca Slicer?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
#~ msgid "g"
#~ msgstr "г"
#~ msgid "Fila Saving"
#~ msgstr "Збереження філаменту"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2025-10-02 17:43+0700\n" "PO-Revision-Date: 2025-10-02 17:43+0700\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: hainguyen.ts13@gmail.com\n" "Language-Team: hainguyen.ts13@gmail.com\n"
@@ -3077,6 +3077,10 @@ msgstr "Chỉnh sửa"
msgid "Merge with" msgid "Merge with"
msgstr "Gộp với" msgstr "Gộp với"
# AI Translated
msgid "Decompose Color"
msgstr "Phân tách màu"
# AI Translated # AI Translated
msgid "Delete this filament" msgid "Delete this filament"
msgstr "Xóa filament này" msgstr "Xóa filament này"
@@ -3389,6 +3393,10 @@ msgstr "Lắp ráp"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "Gộp các phần thành một vật thể" msgstr "Gộp các phần thành một vật thể"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "Sử dụng chiều cao lớp biến đổi cùng với lớp con màu pha trộn có thể làm giảm chất lượng pha màu."
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "Thêm lớp" msgstr "Thêm lớp"
@@ -5040,7 +5048,7 @@ msgstr ""
"\n" "\n"
"Giá trị sẽ được đặt lại về 0." "Giá trị sẽ được đặt lại về 0."
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "Luân phiên wall phụ không hoạt động tốt khi đảm bảo độ dày shell dọc được đặt thành Tất cả." msgstr "Luân phiên wall phụ không hoạt động tốt khi đảm bảo độ dày shell dọc được đặt thành Tất cả."
msgid "" msgid ""
@@ -5086,7 +5094,7 @@ msgstr ""
"NO - Giữ chiều cao lớp support độc lập" "NO - Giữ chiều cao lớp support độc lập"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height cần nhỏ hơn layer_height.\n" "seam_slope_start_height cần nhỏ hơn layer_height.\n"
@@ -5094,7 +5102,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"Độ sâu khóa phải nhỏ hơn độ sâu skin.\n" "Độ sâu khóa phải nhỏ hơn độ sâu skin.\n"
@@ -5135,6 +5143,10 @@ msgstr ""
"Yes - Thay đổi các cài đặt này và bật chế độ spiral tự động\n" "Yes - Thay đổi các cài đặt này và bật chế độ spiral tự động\n"
"No - Từ bỏ dùng chế độ spiral lần này" "No - Từ bỏ dùng chế độ spiral lần này"
# AI Translated
msgid "N/A"
msgstr "N/A"
msgid "Printing" msgid "Printing"
msgstr "Đang in" msgstr "Đang in"
@@ -5653,10 +5665,6 @@ msgstr "Mẫu không hợp lệ. Dùng N, N#K, hoặc danh sách phân cách d
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "Định dạng không hợp lệ. Mong đợi định dạng vector: \"%1%\"" msgstr "Định dạng không hợp lệ. Mong đợi định dạng vector: \"%1%\""
# AI Translated
msgid "N/A"
msgstr "N/A"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "Tác nhân hệ thống" msgstr "Tác nhân hệ thống"
@@ -6681,16 +6689,22 @@ msgstr "Lưu dự án thành"
msgid "Save current project as" msgid "Save current project as"
msgstr "Lưu dự án hiện tại thành" msgstr "Lưu dự án hiện tại thành"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "Nhập 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "Nhập 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "Tải model" msgstr "Tải model"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "Nhập lưu trữ Zip" msgstr "Nhập lưu trữ Zip"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "Tải các model chứa trong lưu trữ zip" msgstr "Tải các model chứa trong lưu trữ zip"
msgid "Import Configs" msgid "Import Configs"
@@ -8288,6 +8302,10 @@ msgstr "Tùy chỉnh bản hiện tại"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "Đầu phun %s không thể in %s." msgstr "Đầu phun %s không thể in %s."
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "Việc in filament màu pha trộn trên máy in một extruder đòi hỏi thay filament và xả thường xuyên, điều này có thể làm tăng đáng kể lượng phế liệu và nguy cơ tắc đầu phun / máng chứa phế liệu."
# AI Translated # AI Translated
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
@@ -8430,12 +8448,44 @@ msgstr "Đồng bộ danh sách filament từ AMS"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "Đặt filament để sử dụng" msgstr "Đặt filament để sử dụng"
# AI Translated
msgid "Add Mixed Filament"
msgstr "Thêm filament pha trộn"
# AI Translated
msgid "Mixed Filament"
msgstr "Filament pha trộn"
# AI Translated
msgid "Remove last mixed filament"
msgstr "Xóa filament pha trộn cuối cùng"
# AI Translated
msgid "Add mixed filament"
msgstr "Thêm filament pha trộn"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "Filament pha trộn có thành phần không hợp lệ hoặc không khớp. Vui lòng chỉnh sửa lại các mục bị ảnh hưởng."
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "Tìm kiếm bản, đối tượng và phần." msgstr "Tìm kiếm bản, đối tượng và phần."
msgid "Pellets" msgid "Pellets"
msgstr "Viên" msgstr "Viên"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "Filament pha trộn có tham chiếu thành phần bị lỗi"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "Chỉnh sửa / Xóa / Gộp"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "Filament pha trộn đích sử dụng filament vật lý này làm thành phần. Việc gộp sẽ xóa filament vật lý này và có thể làm filament pha trộn không còn hợp lệ. Tiếp tục?"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
@@ -8585,8 +8635,14 @@ msgstr "Vui lòng xác nhận G-code trong các preset này an toàn để ngăn
msgid "Customized Preset" msgid "Customized Preset"
msgstr "Preset tùy chỉnh" msgstr "Preset tùy chỉnh"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "Tên của các thành phần bên trong file STEP không phải định dạng UTF8!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "Tên của các thành phần bên trong file STEP không phải định dạng UTF-8!"
# AI Translated # AI Translated
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -8608,10 +8664,10 @@ msgstr "Thể tích của đối tượng bằng không"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"Đối tượng từ file %s quá nhỏ, và có thể đang ở đơn vị mét hoặc inch.\n" "Đối tượng từ file %s quá nhỏ, và có thể đang ở đơn vị mét hoặc inch.\n"
" Bạn có muốn chuyển đổi sang milimét?" "Bạn có muốn chuyển đổi sang milimét?"
msgid "Object too small" msgid "Object too small"
msgstr "Đối tượng quá nhỏ" msgstr "Đối tượng quá nhỏ"
@@ -8628,6 +8684,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "Phát hiện đối tượng nhiều phần" msgstr "Phát hiện đối tượng nhiều phần"
# AI Translated
msgid "Matching textures to filaments"
msgstr "Đang khớp kết cấu với filament"
# AI Translated
msgid "Texture Import Warning"
msgstr "Cảnh báo nhập kết cấu"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "Tải các file này như một đối tượng đơn với nhiều phần?\n" msgstr "Tải các file này như một đối tượng đơn với nhiều phần?\n"
@@ -8857,6 +8921,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "Đồng bộ ngay" msgstr "Đồng bộ ngay"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "Nhập kết cấu thất bại. Mô hình có vẻ chứa dữ liệu kết cấu, nhưng không thể hoàn tất quá trình nhập kết cấu. Mô hình sẽ chỉ được nhập dưới dạng hình học."
# AI Translated
msgid "Applying texture colors..."
msgstr "Đang áp dụng màu kết cấu..."
# AI Translated
msgid "Updating 3D view..."
msgstr "Đang cập nhật khung nhìn 3D..."
# AI Translated
msgid "Texture colors applied."
msgstr "Đã áp dụng màu kết cấu."
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "Bạn có thể giữ các preset đã chỉnh sửa cho dự án mới hoặc loại bỏ chúng" msgstr "Bạn có thể giữ các preset đã chỉnh sửa cho dự án mới hoặc loại bỏ chúng"
@@ -8988,6 +9068,17 @@ msgstr "Lưu file đã slice dưới dạng:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "File %s đã được gửi đến không gian lưu trữ của máy in và có thể được xem trên máy in." msgstr "File %s đã được gửi đến không gian lưu trữ của máy in và có thể được xem trên máy in."
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "Xuất bản"
# AI Translated # AI Translated
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "Chưa đặt loại đầu phun. Vui lòng đặt đầu phun rồi thử lại." msgstr "Chưa đặt loại đầu phun. Vui lòng đặt đầu phun rồi thử lại."
@@ -10227,6 +10318,10 @@ msgstr "Bình xoắn ốc"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "Trình tự filament lớp đầu tiên" msgstr "Trình tự filament lớp đầu tiên"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "Danh sách filament có chứa filament pha trộn. Trình tự filament tùy chỉnh sẽ không có hiệu lực."
msgid "By Layer" msgid "By Layer"
msgstr "Theo lớp" msgstr "Theo lớp"
@@ -10254,9 +10349,6 @@ msgstr "Chuyển đến trang web xuất bản model"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "Lưu ý: Chuẩn bị có thể mất vài phút. Vui lòng kiên nhẫn." msgstr "Lưu ý: Chuẩn bị có thể mất vài phút. Vui lòng kiên nhẫn."
msgid "Publish"
msgstr "Xuất bản"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "Xuất bản đã bị hủy" msgstr "Xuất bản đã bị hủy"
@@ -10273,6 +10365,64 @@ msgstr "Đang tải dữ liệu lên"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "Chuyển đến trang web" msgstr "Chuyển đến trang web"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "Lưu %s dưới dạng" msgstr "Lưu %s dưới dạng"
@@ -11692,12 +11842,12 @@ msgid "No modifications need to be copied."
msgstr "Không có thay đổi nào cần sao chép." msgstr "Không có thay đổi nào cần sao chép."
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "Sao chép tham số" msgstr "Sao chép tham số"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "Sửa tham số của %s" msgstr "Sửa tham số của %s"
# AI Translated # AI Translated
@@ -12266,29 +12416,6 @@ msgstr "Khối lượng xả khi thay filament"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "Vui lòng chọn màu filament" msgstr "Vui lòng chọn màu filament"
# AI Translated
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "Xem trực tiếp trên Wayland thuần cần GStreamer GTK video sink. Vui lòng cài đặt plugin gtksink cho GStreamer, sau đó khởi động lại OrcaSlicer."
# AI Translated
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "Khởi tạo GStreamer video sink trên Wayland thuần thất bại. Vui lòng kiểm tra việc cài đặt plugin GStreamer GTK của bạn."
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "Windows Media Player là cần thiết cho tác vụ này! Bạn có muốn bật 'Windows Media Player' cho hệ điều hành của bạn?"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource chưa được đăng ký chính xác để phát media! Nhấn Có để đăng ký lại. Bạn sẽ được nhắc hai lần"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "Thiếu thành phần BambuSource đã đăng ký để phát media! Vui lòng cài đặt lại OrcaSlicer hoặc tìm kiếm sự giúp đỡ từ cộng đồng."
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "Đang sử dụng BambuSource từ cài đặt khác, phát video có thể không hoạt động đúng! Nhấn Có để sửa nó."
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "Hệ thống của bạn thiếu codec H.264 cho GStreamer, cần thiết để phát video. (Hãy thử cài đặt gói gstreamer1.0-plugins-bad hoặc gstreamer1.0-libav, sau đó khởi động lại Orca Slicer?)"
# AI Translated # AI Translated
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "Tác nhân cloud không khả dụng. Vui lòng khởi động lại OrcaSlicer rồi thử lại." msgstr "Tác nhân cloud không khả dụng. Vui lòng khởi động lại OrcaSlicer rồi thử lại."
@@ -13037,6 +13164,10 @@ msgstr "Nếu bạn vẫn muốn in, bạn có thể bật tùy chọn trong Tù
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "Không có đùn dưới cài đặt hiện tại." msgstr "Không có đùn dưới cài đặt hiện tại."
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "Đang dùng filament pha trộn có gradient, nhưng 'Lớp con màu pha trộn' đã bị tắt. Gradient sẽ không được in."
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "Chế độ mượt của timelapse không được hỗ trợ khi trình tự \"theo đối tượng\" được bật." msgstr "Chế độ mượt của timelapse không được hỗ trợ khi trình tự \"theo đối tượng\" được bật."
@@ -13075,6 +13206,10 @@ msgstr "Bạn có thể muốn giảm kích thước model của mình hoặc th
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Chiều cao lớp thay đổi không được hỗ trợ với support hữu cơ." msgstr "Chiều cao lớp thay đổi không được hỗ trợ với support hữu cơ."
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "Filament của wipe tower không thể là filament pha trộn."
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "Đường kính đầu phun khác nhau và đường kính filament khác nhau có thể không hoạt động tốt khi prime tower được bật. Nó rất thử nghiệm, vì vậy vui lòng tiến hành thận trọng." msgstr "Đường kính đầu phun khác nhau và đường kính filament khác nhau có thể không hoạt động tốt khi prime tower được bật. Nó rất thử nghiệm, vì vậy vui lòng tiến hành thận trọng."
@@ -13449,7 +13584,7 @@ msgstr "mm hoặc %"
msgid "Other layers" msgid "Other layers"
msgstr "Lớp khác" msgstr "Lớp khác"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "Nhiệt độ bàn cho các lớp ngoại trừ lớp đầu tiên. Giá trị 0 có nghĩa là filament không hỗ trợ in trên bản Cool SuperTack." msgstr "Nhiệt độ bàn cho các lớp ngoại trừ lớp đầu tiên. Giá trị 0 có nghĩa là filament không hỗ trợ in trên bản Cool SuperTack."
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -14857,6 +14992,8 @@ msgstr "Thời gian lớp"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "Quạt làm mát phần sẽ được bật cho các lớp có thời gian ước tính ngắn hơn giá trị này. Tốc độ quạt được nội suy giữa tốc độ quạt tối thiểu và tối đa theo thời gian in lớp." msgstr "Quạt làm mát phần sẽ được bật cho các lớp có thời gian ước tính ngắn hơn giá trị này. Tốc độ quạt được nội suy giữa tốc độ quạt tối thiểu và tối đa theo thời gian in lớp."
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -15196,6 +15333,62 @@ msgstr "Vật liệu support"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "Vật liệu support thường được sử dụng để in support và giao diện support." msgstr "Vật liệu support thường được sử dụng để in support và giao diện support."
# AI Translated
msgid "Is mixed filament"
msgstr "Là filament pha trộn"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "Xác định xem khe filament này có phải là filament pha trộn gồm nhiều filament vật lý hay không"
# AI Translated
msgid "Mixed filament components"
msgstr "Thành phần của filament pha trộn"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "Chỉ số của các filament thành phần, bắt đầu từ 1, phân tách bằng dấu phẩy, ví dụ \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "Tỷ lệ lớp con của filament pha trộn"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "Các giá trị tỷ lệ phân tách bằng dấu phẩy, có tổng bằng 1.0, ví dụ \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "Gradient của filament pha trộn"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "Bật chế độ gradient theo phương Z cho các lớp con của filament pha trộn. Khi bật, tỷ lệ các lớp con thay đổi tuyến tính qua các lớp."
# AI Translated
msgid "Mixed filament gradient range"
msgstr "Phạm vi gradient của filament pha trộn"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "Tỷ lệ đầu và cuối của thành phần thứ nhất ở chế độ gradient. Cặp giá trị phân tách bằng dấu phẩy, ví dụ \"0.10,0.90\" nghĩa là từ 10% đến 90%."
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "Đường cong gradient của filament pha trộn"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "Đường cong tùy chỉnh kiểu Photoshop (tùy chọn) ánh xạ tiến trình theo Z sang tỷ lệ của thành phần thứ nhất. Được mã hóa dưới dạng các điểm điều khiển phân tách bằng dấu gạch đứng, theo dạng \"x,y\" (kiểu cũ) hoặc \"x,y,m_in,m_out\" khi cần ghi đè tiếp tuyến (giá trị trống hoặc \"nan\" nghĩa là dùng mặc định PCHIP). x nằm trong [0,1]; y bị giới hạn trong phạm vi tỷ lệ đã cấu hình, ví dụ \"0,0.15|0.5,0.50|1,0.85\". Khi để trống, gradient_range tuyến tính sẽ được dùng thay thế."
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "Gradient theo từng phần của filament pha trộn"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "Khi chế độ gradient được bật, áp dụng gradient cho từng phần của một cụm lắp ráp một cách độc lập thay vì coi toàn bộ cụm lắp ráp là một phạm vi Z duy nhất."
# AI Translated # AI Translated
msgid "Filament printable" msgid "Filament printable"
msgstr "Filament in được" msgstr "Filament in được"
@@ -16508,6 +16701,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Lực đầu ra tối đa cho phép của trục Y" msgstr "Lực đầu ra tối đa cho phép của trục Y"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -16520,6 +16714,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Tải khối lượng bàn máy của trục Y" msgstr "Tải khối lượng bàn máy của trục Y"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -16846,8 +17041,8 @@ msgid "Reduce infill retraction"
msgstr "Giảm rút infill" msgstr "Giảm rút infill"
# AI Translated # AI Translated
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "Không rút khi di chuyển ở vùng infill hoàn toàn. Điều đó có nghĩa là chảy nhựa không thể nhìn thấy. Điều này có thể giảm số lần rút cho model phức tạp và tiết kiệm thời gian in, nhưng làm cho slice và tạo G-code chậm hơn. Lưu ý rằng z-hop cũng không được thực hiện ở những vùng bỏ qua việc rút." msgstr "Không rút khi di chuyển ở vùng infill hoàn toàn. Điều đó có nghĩa là chảy nhựa không thể nhìn thấy. Điều này có thể giảm số lần rút cho model phức tạp và tiết kiệm thời gian in, nhưng làm cho slice và tạo G-code chậm hơn. Lưu ý rằng Z-hop cũng không được thực hiện ở những vùng bỏ qua việc rút."
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
msgstr "Tùy chọn này sẽ giảm nhiệt độ của các extruder không hoạt động để ngăn chảy nhựa." msgstr "Tùy chọn này sẽ giảm nhiệt độ của các extruder không hoạt động để ngăn chảy nhựa."
@@ -17022,7 +17217,7 @@ msgstr "Lượng rút sau khi lau"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"Độ dài rút nhanh sau khi lau, tương đối so với độ dài rút.\n" "Độ dài rút nhanh sau khi lau, tương đối so với độ dài rút.\n"
@@ -17071,7 +17266,7 @@ msgstr "Khi rút được kích hoạt trước khi đổi công cụ, filament
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Chiều cao Z-hop" msgstr "Chiều cao Z-hop"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "Bất cứ khi nào rút được thực hiện, đầu phun được nâng lên một chút để tạo khoảng trống giữa đầu phun và bản in. Nó ngăn đầu phun va vào bản in khi di chuyển. Sử dụng đường xoắn ốc để nâng Z có thể ngăn dây kéo." msgstr "Bất cứ khi nào rút được thực hiện, đầu phun được nâng lên một chút để tạo khoảng trống giữa đầu phun và bản in. Nó ngăn đầu phun va vào bản in khi di chuyển. Sử dụng đường xoắn ốc để nâng Z có thể ngăn dây kéo."
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -18140,6 +18335,14 @@ msgstr ""
"\n" "\n"
"Đặt giá trị trong cài đặt lượng rút trước khi lau bên dưới sẽ thực hiện bất kỳ rút dư nào trước khi lau, nếu không nó sẽ được thực hiện sau." "Đặt giá trị trong cài đặt lượng rút trước khi lau bên dưới sẽ thực hiện bất kỳ rút dư nào trước khi lau, nếu không nó sẽ được thực hiện sau."
# AI Translated
msgid "Mixed color sublayer"
msgstr "Lớp con màu pha trộn"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "Bật việc chia thành lớp con màu pha trộn. Khi bật, các lớp có chứa filament màu pha trộn sẽ được chia thành các lớp con để tạo hiệu ứng pha màu."
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "Wipe tower có thể được sử dụng để làm sạch cặn trên đầu phun và ổn định áp suất buồng bên trong đầu phun, để tránh khuyết điểm bề ngoài khi in đối tượng." msgstr "Wipe tower có thể được sử dụng để làm sạch cặn trên đầu phun và ổn định áp suất buồng bên trong đầu phun, để tránh khuyết điểm bề ngoài khi in đối tượng."
@@ -19260,6 +19463,10 @@ msgstr "Tạo lưới cho file mô hình thất bại hoặc không có hình d
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "File được cung cấp không thể đọc được vì nó trống" msgstr "File được cung cấp không thể đọc được vì nó trống"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "Định dạng tệp không tương thích nên không thể phân tích."
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "Định dạng file không xác định. File đầu vào phải có phần mở rộng .stl, .obj, .amf(.xml)." msgstr "Định dạng file không xác định. File đầu vào phải có phần mở rộng .stl, .obj, .amf(.xml)."
@@ -20793,19 +21000,19 @@ msgstr "Chỉ hiển thị tên máy in có thay đổi đối với cài đặt
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "Chỉ hiển thị tên filament có thay đổi đối với cài đặt sẵn filament." msgstr "Chỉ hiển thị tên filament có thay đổi đối với cài đặt sẵn filament."
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "Chỉ tên máy in có cài đặt sẵn máy in người dùng sẽ được hiển thị, và mỗi cài đặt sẵn bạn chọn sẽ được xuất dưới dạng zip." msgstr "Chỉ tên máy in có cài đặt sẵn máy in người dùng sẽ được hiển thị, và mỗi cài đặt sẵn bạn chọn sẽ được xuất dưới dạng zip."
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Chỉ tên filament có cài đặt sẵn filament người dùng sẽ được hiển thị, \n" "Chỉ tên filament có cài đặt sẵn filament người dùng sẽ được hiển thị, \n"
"và tất cả cài đặt sẵn filament người dùng trong mỗi tên filament bạn chọn sẽ được xuất dưới dạng zip." "và tất cả cài đặt sẵn filament người dùng trong mỗi tên filament bạn chọn sẽ được xuất dưới dạng zip."
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"Chỉ tên máy in có cài đặt sẵn quy trình đã thay đổi sẽ được hiển thị, \n" "Chỉ tên máy in có cài đặt sẵn quy trình đã thay đổi sẽ được hiển thị, \n"
"và tất cả cài đặt sẵn quy trình người dùng trong mỗi tên máy in bạn chọn sẽ được xuất dưới dạng zip." "và tất cả cài đặt sẵn quy trình người dùng trong mỗi tên máy in bạn chọn sẽ được xuất dưới dạng zip."
@@ -21057,7 +21264,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "Chúng tôi cần thông tin để chẩn đoán nguồn gốc vấn đề. Hãy xem trang wiki để có hướng dẫn chi tiết." msgstr "Chúng tôi cần thông tin để chẩn đoán nguồn gốc vấn đề. Hãy xem trang wiki để có hướng dẫn chi tiết."
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "Nút Đóng gói thu thập file dự án và nhật ký của phiên hiện tại vào một file zip." msgstr "Nút Đóng gói thu thập file dự án và nhật ký của phiên hiện tại vào một file zip."
# AI Translated # AI Translated
@@ -21113,7 +21320,7 @@ msgid "Stored logs"
msgstr "Nhật ký đã lưu" msgstr "Nhật ký đã lưu"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "Đóng gói toàn bộ nhật ký đã lưu vào một file zip." msgstr "Đóng gói toàn bộ nhật ký đã lưu vào một file zip."
# AI Translated # AI Translated
@@ -21201,7 +21408,7 @@ msgid "Authorizing..."
msgstr "Đang xác thực..." msgstr "Đang xác thực..."
# AI Translated # AI Translated
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "Lỗi. Không lấy được token api để xác thực" msgstr "Lỗi. Không lấy được token api để xác thực"
# AI Translated # AI Translated
@@ -21681,8 +21888,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "Bật gán filament thông minh: Gán một filament cho nhiều đầu phun để tối đa hóa tiết kiệm" msgstr "Bật gán filament thông minh: Gán một filament cho nhiều đầu phun để tối đa hóa tiết kiệm"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "Tiết kiệm fila" msgstr "Lưu tệp"
# AI Translated # AI Translated
msgid "Don't remind me again" msgid "Don't remind me again"
@@ -22036,6 +22243,15 @@ msgstr "Thao tác này không thể hoàn tác. Tiếp tục?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "Đang bỏ qua các vật thể." msgstr "Đang bỏ qua các vật thể."
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
# AI Translated # AI Translated
msgid "Select Filament" msgid "Select Filament"
msgstr "Chọn filament" msgstr "Chọn filament"
@@ -22138,6 +22354,9 @@ msgstr "Khởi động lại ngay"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "HOÀN TOÀN KHÔNG RAMMING" msgstr "HOÀN TOÀN KHÔNG RAMMING"
msgid "s"
msgstr "s"
# AI Translated # AI Translated
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "Tốc độ thể tích" msgstr "Tốc độ thể tích"
@@ -22804,6 +23023,41 @@ msgstr ""
"Tránh cong vênh\n" "Tránh cong vênh\n"
"Bạn có biết rằng khi in vật liệu dễ cong vênh như ABS, tăng nhiệt độ bàn nóng một cách thích hợp có thể giảm xác suất cong vênh không?" "Bạn có biết rằng khi in vật liệu dễ cong vênh như ABS, tăng nhiệt độ bàn nóng một cách thích hợp có thể giảm xác suất cong vênh không?"
# AI Translated
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "Xem trực tiếp trên Wayland thuần cần GStreamer GTK video sink. Vui lòng cài đặt plugin gtksink cho GStreamer, sau đó khởi động lại OrcaSlicer."
# AI Translated
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "Khởi tạo GStreamer video sink trên Wayland thuần thất bại. Vui lòng kiểm tra việc cài đặt plugin GStreamer GTK của bạn."
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "Windows Media Player là cần thiết cho tác vụ này! Bạn có muốn bật 'Windows Media Player' cho hệ điều hành của bạn?"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource chưa được đăng ký chính xác để phát media! Nhấn Có để đăng ký lại. Bạn sẽ được nhắc hai lần"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "Thiếu thành phần BambuSource đã đăng ký để phát media! Vui lòng cài đặt lại OrcaSlicer hoặc tìm kiếm sự giúp đỡ từ cộng đồng."
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "Đang sử dụng BambuSource từ cài đặt khác, phát video có thể không hoạt động đúng! Nhấn Có để sửa nó."
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "Hệ thống của bạn thiếu codec H.264 cho GStreamer, cần thiết để phát video. (Hãy thử cài đặt gói gstreamer1.0-plugins-bad hoặc gstreamer1.0-libav, sau đó khởi động lại Orca Slicer?)"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "Tiết kiệm fila"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -6,7 +6,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Slic3rPE\n" "Project-Id-Version: Slic3rPE\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2026-06-11 12:37-0300\n" "PO-Revision-Date: 2026-06-11 12:37-0300\n"
"Last-Translator: Handle <mail@bysb.net>\n" "Last-Translator: Handle <mail@bysb.net>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2843,6 +2843,10 @@ msgstr "编辑"
msgid "Merge with" msgid "Merge with"
msgstr "与其合并" msgstr "与其合并"
# AI Translated
msgid "Decompose Color"
msgstr "分解颜色"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "移除此耗材" msgstr "移除此耗材"
@@ -3124,6 +3128,10 @@ msgstr "组合体"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "合并零件到对象" msgstr "合并零件到对象"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "同时使用可变层高与混色子层可能导致混色质量不佳。"
msgid "Add layers" msgid "Add layers"
msgstr "添加层" msgstr "添加层"
@@ -4641,7 +4649,7 @@ msgstr ""
"\n" "\n"
"这个数值将被重置为0。" "这个数值将被重置为0。"
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "“交替添加额外”与“确保垂直外壳厚度”的”全部“选项不兼容。" msgstr "“交替添加额外”与“确保垂直外壳厚度”的”全部“选项不兼容。"
msgid "" msgid ""
@@ -4687,7 +4695,7 @@ msgstr ""
"否 - 选择保留支撑独立层高" "否 - 选择保留支撑独立层高"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height需要小于layer_height。\n" "seam_slope_start_height需要小于layer_height。\n"
@@ -4695,7 +4703,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"锁定深度应小于表皮深度。\n" "锁定深度应小于表皮深度。\n"
@@ -4735,6 +4743,9 @@ msgstr ""
"是 - 自动调整这些设置并开启旋转模式\n" "是 - 自动调整这些设置并开启旋转模式\n"
"否 - 暂不使用旋转模式" "否 - 暂不使用旋转模式"
msgid "N/A"
msgstr "不适用"
msgid "Printing" msgid "Printing"
msgstr "打印中" msgstr "打印中"
@@ -5194,9 +5205,6 @@ msgstr "无效的模式。请使用 N、N#K 或逗号分隔的列表(每个条
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "无效格式,应该是\"%1%\"这种数组格式" msgstr "无效格式,应该是\"%1%\"这种数组格式"
msgid "N/A"
msgstr "不适用"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "系统代理" msgstr "系统代理"
@@ -6151,16 +6159,22 @@ msgstr "项目另存为"
msgid "Save current project as" msgid "Save current project as"
msgstr "项目另存为" msgstr "项目另存为"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "导入 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "导入 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "加载模型" msgstr "加载模型"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "导入 ZIP 压缩文件" msgstr "导入 ZIP 压缩文件"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "从 ZIP 压缩文件中导入一个或多个模型" msgstr "从 ZIP 压缩文件中导入一个或多个模型"
msgid "Import Configs" msgid "Import Configs"
@@ -7638,6 +7652,10 @@ msgstr "自定义当前盘"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%s 喷嘴无法打印 %s。" msgstr "%s 喷嘴无法打印 %s。"
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "在单挤出机打印机上打印混色耗材丝需要频繁换料和冲刷,可能显著增加废料以及喷嘴/废料槽堵塞的风险。"
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "不建议在打印时将 %1% 与 %2% 混合。\n" msgstr "不建议在打印时将 %1% 与 %2% 混合。\n"
@@ -7763,12 +7781,44 @@ msgstr "从AMS同步材料列表"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "配置可选择的材料" msgstr "配置可选择的材料"
# AI Translated
msgid "Add Mixed Filament"
msgstr "添加混合耗材丝"
# AI Translated
msgid "Mixed Filament"
msgstr "混合耗材丝"
# AI Translated
msgid "Remove last mixed filament"
msgstr "移除最后一个混合耗材丝"
# AI Translated
msgid "Add mixed filament"
msgstr "添加混合耗材丝"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "混合耗材丝的组分无效或不匹配。请重新编辑受影响的条目。"
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "搜索盘、模型和零件。" msgstr "搜索盘、模型和零件。"
msgid "Pellets" msgid "Pellets"
msgstr "颗粒" msgstr "颗粒"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "混合耗材丝的组分引用已失效"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "编辑 / 删除 / 合并"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "目标混合耗材丝将此物理耗材丝用作组分。合并将移除此物理耗材丝,并可能使该混合耗材丝失效。是否继续?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "完成操作后,%s 项目将关闭并创建一个新项目。" msgstr "完成操作后,%s 项目将关闭并创建一个新项目。"
@@ -7905,8 +7955,14 @@ msgstr "请确认这些预设中的G-codes是否安全以防止对机器造
msgid "Customized Preset" msgid "Customized Preset"
msgstr "自定义的预设" msgstr "自定义的预设"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr "STEP 文件中的部件名称不是 UTF8 格式!" msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "STEP 文件中的部件名称不是 UTF-8 格式!"
# AI Translated # AI Translated
msgid "Because of unsupported text encoding, garbage characters may appear!" msgid "Because of unsupported text encoding, garbage characters may appear!"
@@ -7928,7 +7984,7 @@ msgstr "对象的体积为零"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"文件 %s 中对象的尺寸过小似乎是以米m或者英寸inch为单位定义的。\n" "文件 %s 中对象的尺寸过小似乎是以米m或者英寸inch为单位定义的。\n"
"OrcaSlicer的内部单位为毫米mm。是否要转换成毫米mm" "OrcaSlicer的内部单位为毫米mm。是否要转换成毫米mm"
@@ -7949,6 +8005,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "检测到多部分对象" msgstr "检测到多部分对象"
# AI Translated
msgid "Matching textures to filaments"
msgstr "正在将纹理匹配到耗材丝"
# AI Translated
msgid "Texture Import Warning"
msgstr "纹理导入警告"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "将这些文件加载为一个多零件对象?\n" msgstr "将这些文件加载为一个多零件对象?\n"
@@ -8154,6 +8218,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "立即同步" msgstr "立即同步"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "纹理导入失败。模型中似乎包含纹理数据,但纹理导入过程未能完成。将仅导入模型的几何数据。"
# AI Translated
msgid "Applying texture colors..."
msgstr "正在应用纹理颜色..."
# AI Translated
msgid "Updating 3D view..."
msgstr "正在更新 3D 视图..."
# AI Translated
msgid "Texture colors applied."
msgstr "纹理颜色已应用。"
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "您可以保留修改的预设到新项目中或者忽略这些修改" msgstr "您可以保留修改的预设到新项目中或者忽略这些修改"
@@ -8286,6 +8366,17 @@ msgstr "切片文件另存为:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "文件%s已经发送到打印机的存储空间可以在打印机上浏览。" msgstr "文件%s已经发送到打印机的存储空间可以在打印机上浏览。"
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "发布"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "未设置喷嘴类型。请设置喷嘴并重试。" msgstr "未设置喷嘴类型。请设置喷嘴并重试。"
@@ -9389,6 +9480,10 @@ msgstr "旋转花瓶"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "首层耗材打印顺序" msgstr "首层耗材打印顺序"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "耗材丝列表中包含混合耗材丝。自定义耗材丝顺序将不会生效。"
msgid "By Layer" msgid "By Layer"
msgstr "逐层" msgstr "逐层"
@@ -9417,9 +9512,6 @@ msgstr "跳转到发布页面"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "提示:发布前需要一些准备时间,请耐心等待。" msgstr "提示:发布前需要一些准备时间,请耐心等待。"
msgid "Publish"
msgstr "发布"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "发布已取消" msgstr "发布已取消"
@@ -9435,6 +9527,64 @@ msgstr "正在上传数据"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "跳转到网页" msgstr "跳转到网页"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "另存%s为" msgstr "另存%s为"
@@ -10738,12 +10888,12 @@ msgid "No modifications need to be copied."
msgstr "没有需要复制的修改。" msgstr "没有需要复制的修改。"
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "复制参数" msgstr "复制参数"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "修改 %s 的参数" msgstr "修改 %s 的参数"
# AI Translated # AI Translated
@@ -11258,27 +11408,6 @@ msgstr "耗材丝更换时的冲刷体积"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "请选择耗材丝颜色" msgstr "请选择耗材丝颜色"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "原生 Wayland 实时画面需要 GStreamer GTK 视频接收器。请安装 GStreamer 的 gtksink 插件,然后重启 OrcaSlicer。"
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "原生 Wayland GStreamer 视频接收器初始化失败。请检查您的 GStreamer GTK 插件安装情况。"
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "此任务需要 Windows Media Player您是否要为您的操作系统启用'Windows Media Player'"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "BambuSource 未正确注册用于媒体播放!按是重新注册它。您将被提示两次"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "缺少用于媒体播放的已注册 BambuSource 组件!请重新安装 OrcaSlicer 或寻求社区帮助。"
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "使用来自不同安装的 BambuSource视频播放可能无法正常工作按是修复它。"
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "您的系统缺少 GStreamer 所需的 H.264 编解码器,这是播放视频所必需的。(尝试安装 gstreamer1.0-plugins-bad 或 gstreamer1.0-libav 软件包,然后重新启动 Orca Slicer"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "云代理不可用。请重启 OrcaSlicer 后重试。" msgstr "云代理不可用。请重启 OrcaSlicer 后重试。"
@@ -11991,6 +12120,10 @@ msgstr "如果您仍要打印,可以在 偏好设置 / 控制 / 切片 / 移
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "根据当前设置,不会生成任何打印。" msgstr "根据当前设置,不会生成任何打印。"
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "使用了渐变混合耗材丝,但“混色子层”已关闭。渐变将不会被打印。"
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "平滑模式的延时摄影不支持在逐件打印模式下使用。" msgstr "平滑模式的延时摄影不支持在逐件打印模式下使用。"
@@ -12027,6 +12160,10 @@ msgstr "或许您想要缩小模型的尺寸,或者更改当前打印设置,
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "Organic支撑不支持可变层高。" msgstr "Organic支撑不支持可变层高。"
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "擦拭塔耗材丝不能是混合耗材丝。"
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "当启用擦拭塔时,不同的喷嘴直径和不同的耗材丝直径可能无法很好地工作。这是非常实验性的,所以请谨慎操作。" msgstr "当启用擦拭塔时,不同的喷嘴直径和不同的耗材丝直径可能无法很好地工作。这是非常实验性的,所以请谨慎操作。"
@@ -12374,7 +12511,7 @@ msgstr "mm 或 %"
msgid "Other layers" msgid "Other layers"
msgstr "其它层" msgstr "其它层"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "除首层外的其他层的热床温度。0值表示该耗材丝不支持在Cool Plate SuperTack上打印。" msgstr "除首层外的其他层的热床温度。0值表示该耗材丝不支持在Cool Plate SuperTack上打印。"
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13695,6 +13832,8 @@ msgstr "层时间"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "当层预估打印时间小于该数值时,部件冷却风扇将会被开启。风扇转速将根据层打印时间在最大和最小风扇转速之间插值获得" msgstr "当层预估打印时间小于该数值时,部件冷却风扇将会被开启。风扇转速将根据层打印时间在最大和最小风扇转速之间插值获得"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "s" msgstr "s"
@@ -14013,6 +14152,62 @@ msgstr "支撑材料"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "支撑材料通常用于打印支撑体和支撑接触面" msgstr "支撑材料通常用于打印支撑体和支撑接触面"
# AI Translated
msgid "Is mixed filament"
msgstr "是否为混合耗材丝"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "该耗材丝槽位是否为由多种物理耗材丝组成的混合耗材丝"
# AI Translated
msgid "Mixed filament components"
msgstr "混合耗材丝组分"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "以逗号分隔的组分耗材丝序号(从 1 开始),例如 \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "混合耗材丝子层比例"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "以逗号分隔、总和为 1.0 的比例值,例如 \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "混合耗材丝渐变"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "为混合耗材丝的子层启用 Z 方向渐变模式。启用后,子层比例会随层数线性变化。"
# AI Translated
msgid "Mixed filament gradient range"
msgstr "混合耗材丝渐变范围"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "渐变模式下第一个组分的起始和结束比例。以逗号分隔的一对数值,例如 \"0.10,0.90\" 表示从 10% 到 90%。"
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "混合耗材丝渐变曲线"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "可选的 Photoshop 风格自定义曲线,将 Z 方向进度映射到第一个组分的比例。以竖线分隔的控制点进行编码,格式为 \"x,y\"(旧格式)或在需要覆盖切线时使用 \"x,y,m_in,m_out\"(留空或填 \"nan\" 表示使用 PCHIP 默认值。x 取值范围为 [0,1]y 会被限制在所配置的比例范围内,例如 \"0,0.15|0.5,0.50|1,0.85\"。留空时改用线性的 gradient_range。"
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "混合耗材丝逐零件渐变"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "启用渐变模式时,对组合体中的每个零件分别应用渐变,而不是将整个组合体视为一个 Z 范围。"
msgid "Filament printable" msgid "Filament printable"
msgstr "可打印耗材" msgstr "可打印耗材"
@@ -15264,6 +15459,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Y 轴允许的最大输出力" msgstr "Y 轴允许的最大输出力"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15276,6 +15472,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Y 轴的机器热床质量负载" msgstr "Y 轴的机器热床质量负载"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15583,7 +15780,7 @@ msgstr "从切割区域到垃圾桶的起始和结束点。"
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "减小填充回抽" msgstr "减小填充回抽"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "当空驶完全在填充区域内时不触发回抽。这意味着即使漏料也是不可见的。对于复杂模型该设置能够减少回抽次数以及打印时长但是会造成G-code生成变慢" msgstr "当空驶完全在填充区域内时不触发回抽。这意味着即使漏料也是不可见的。对于复杂模型该设置能够减少回抽次数以及打印时长但是会造成G-code生成变慢"
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -15754,7 +15951,7 @@ msgstr "擦拭后的回抽量"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"擦拭后快速回抽的长度,相对于回抽长度。\n" "擦拭后快速回抽的长度,相对于回抽长度。\n"
@@ -15801,7 +15998,7 @@ msgstr "在换工具头之前触发回抽时,耗材丝会按指定的长度回
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z抬升高度" msgstr "Z抬升高度"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "回抽完成之后喷嘴轻微抬升和打印件之间产生一定间隙。这能够避免空驶时喷嘴和打印件剐蹭和碰撞。使用螺旋线抬升z能够减少拉丝。" msgstr "回抽完成之后喷嘴轻微抬升和打印件之间产生一定间隙。这能够避免空驶时喷嘴和打印件剐蹭和碰撞。使用螺旋线抬升z能够减少拉丝。"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -16847,6 +17044,14 @@ msgstr ""
"\n" "\n"
"在下方的擦拭前回抽量设置中输入一个数值,将在擦拭动作之前执行任何超出部分的回抽,否则超出部分的回抽将在擦拭之后执行。" "在下方的擦拭前回抽量设置中输入一个数值,将在擦拭动作之前执行任何超出部分的回抽,否则超出部分的回抽将在擦拭之后执行。"
# AI Translated
msgid "Mixed color sublayer"
msgstr "混色子层"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "启用混色子层拆分。启用后,含有混色耗材丝的层将被拆分为子层,以实现混色效果。"
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "擦拭塔可以用来清理喷嘴上的残留料和让喷嘴内部的腔压达到稳定状态,以避免打印物体时出现外观瑕疵。" msgstr "擦拭塔可以用来清理喷嘴上的残留料和让喷嘴内部的腔压达到稳定状态,以避免打印物体时出现外观瑕疵。"
@@ -17922,6 +18127,10 @@ msgstr "模型文件的网格划分失败,或缺少有效的形状。"
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "无法读取提供的文件,因为该文件内容为空。" msgstr "无法读取提供的文件,因为该文件内容为空。"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "文件格式不兼容,无法解析。"
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "未知的文件格式。输入文件的扩展名必须为 .stl、.obj 或 .amf.xml。" msgstr "未知的文件格式。输入文件的扩展名必须为 .stl、.obj 或 .amf.xml。"
@@ -19386,17 +19595,17 @@ msgstr "仅显示对打印机、耗材和工艺预设有改动的打印机名称
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "仅显示对耗材预设有改动的耗材名称。" msgstr "仅显示对耗材预设有改动的耗材名称。"
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "只显示带有用户打印机预设的打印机名称,并且您选择的每个预设都将导出为一个 ZIP 文件。" msgstr "只显示带有用户打印机预设的打印机名称,并且您选择的每个预设都将导出为一个 ZIP 文件。"
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "只显示带有用户耗材预设的耗材名称,您选择的每个耗材名称中的所有用户耗材预设都将导出为一个 ZIP 文件。" msgstr "只显示带有用户耗材预设的耗材名称,您选择的每个耗材名称中的所有用户耗材预设都将导出为一个 ZIP 文件。"
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "只显示带有更改的工艺预设的打印机名称,您选择的每个打印机名称中的所有用户工艺预设都将导出为一个 ZIP 文件。" msgstr "只显示带有更改的工艺预设的打印机名称,您选择的每个打印机名称中的所有用户工艺预设都将导出为一个 ZIP 文件。"
msgid "Please select at least one printer or filament." msgid "Please select at least one printer or filament."
@@ -19635,7 +19844,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "我们需要相关信息来诊断问题的根源。请查看 wiki 页面获取详细指南。" msgstr "我们需要相关信息来诊断问题的根源。请查看 wiki 页面获取详细指南。"
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "“打包”按钮会将当前会话的项目文件和日志收集到一个 zip 文件中。" msgstr "“打包”按钮会将当前会话的项目文件和日志收集到一个 zip 文件中。"
# AI Translated # AI Translated
@@ -19691,7 +19900,7 @@ msgid "Stored logs"
msgstr "已存储的日志" msgstr "已存储的日志"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "将所有已存储的日志打包到一个 zip 文件中。" msgstr "将所有已存储的日志打包到一个 zip 文件中。"
# AI Translated # AI Translated
@@ -19771,7 +19980,7 @@ msgstr "未找到打印机类型,请手动选择。"
msgid "Authorizing..." msgid "Authorizing..."
msgstr "正在授权..." msgstr "正在授权..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "错误。无法获取用于授权的 API 令牌" msgstr "错误。无法获取用于授权的 API 令牌"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20221,8 +20430,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "启用智能耗材分配:将一种耗材分配给多个喷嘴以最大化节省" msgstr "启用智能耗材分配:将一种耗材分配给多个喷嘴以最大化节省"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "耗材节省" msgstr "文件保存"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "不再提醒" msgstr "不再提醒"
@@ -20508,6 +20717,15 @@ msgstr "此操作无法撤消。继续?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "跳过对象。" msgstr "跳过对象。"
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "选择耗材" msgstr "选择耗材"
@@ -20587,6 +20805,9 @@ msgstr "立即重启"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "完全不挤压" msgstr "完全不挤压"
msgid "s"
msgstr "s"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "体积流量" msgstr "体积流量"
@@ -21211,6 +21432,39 @@ msgstr ""
"避免翘曲\n" "避免翘曲\n"
"您知道吗打印ABS这类易翘曲材料时适当提高热床温度可以降低翘曲的概率。" "您知道吗打印ABS这类易翘曲材料时适当提高热床温度可以降低翘曲的概率。"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "原生 Wayland 实时画面需要 GStreamer GTK 视频接收器。请安装 GStreamer 的 gtksink 插件,然后重启 OrcaSlicer。"
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "原生 Wayland GStreamer 视频接收器初始化失败。请检查您的 GStreamer GTK 插件安装情况。"
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "此任务需要 Windows Media Player您是否要为您的操作系统启用'Windows Media Player'"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "BambuSource 未正确注册用于媒体播放!按是重新注册它。您将被提示两次"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "缺少用于媒体播放的已注册 BambuSource 组件!请重新安装 OrcaSlicer 或寻求社区帮助。"
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "使用来自不同安装的 BambuSource视频播放可能无法正常工作按是修复它。"
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "您的系统缺少 GStreamer 所需的 H.264 编解码器,这是播放视频所必需的。(尝试安装 gstreamer1.0-plugins-bad 或 gstreamer1.0-libav 软件包,然后重新启动 Orca Slicer"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "耗材节省"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Orca Slicer\n" "Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-08-19 14:07-0300\n" "POT-Creation-Date: 2026-09-03 10:27+0800\n"
"PO-Revision-Date: 2025-11-28 13:48-0600\n" "PO-Revision-Date: 2025-11-28 13:48-0600\n"
"Last-Translator: tntchn <15895303+tntchn@users.noreply.github.com>\n" "Last-Translator: tntchn <15895303+tntchn@users.noreply.github.com>\n"
"Language-Team: \n" "Language-Team: \n"
@@ -2913,6 +2913,10 @@ msgstr "編輯"
msgid "Merge with" msgid "Merge with"
msgstr "合併到" msgstr "合併到"
# AI Translated
msgid "Decompose Color"
msgstr "分解顏色"
msgid "Delete this filament" msgid "Delete this filament"
msgstr "刪除此線材" msgstr "刪除此線材"
@@ -3209,6 +3213,10 @@ msgstr "組合體"
msgid "Merge parts to an object" msgid "Merge parts to an object"
msgstr "合併零件為物件" msgstr "合併零件為物件"
# AI Translated
msgid "Using variable layer height together with mixed color sublayer may result in poor color mixing quality."
msgstr "同時使用可變層高與混色子層可能導致混色品質不佳。"
# AI Translated # AI Translated
msgid "Add layers" msgid "Add layers"
msgstr "新增層" msgstr "新增層"
@@ -4758,7 +4766,7 @@ msgstr ""
"\n" "\n"
"該值將會重設為 0。" "該值將會重設為 0。"
msgid "Alternate extra wall does't work well when ensure vertical shell thickness is set to All." msgid "Alternate extra wall doesn't work well when ensure vertical shell thickness is set to All."
msgstr "當確保垂直外殼厚度設為『全部』時,交錯額外牆壁效果不佳。" msgstr "當確保垂直外殼厚度設為『全部』時,交錯額外牆壁效果不佳。"
msgid "" msgid ""
@@ -4815,7 +4823,7 @@ msgstr ""
"否 - 選擇保留獨立支撐層高" "否 - 選擇保留獨立支撐層高"
msgid "" msgid ""
"seam_slope_start_height need to be smaller than layer_height.\n" "seam_slope_start_height needs to be smaller than layer_height.\n"
"Reset to 0." "Reset to 0."
msgstr "" msgstr ""
"seam_slope_start_height 必須小於 layer_height。\n" "seam_slope_start_height 必須小於 layer_height。\n"
@@ -4824,7 +4832,7 @@ msgstr ""
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"Lock depth should smaller than skin depth.\n" "Lock depth should be smaller than skin depth.\n"
"Reset to 50% of skin depth." "Reset to 50% of skin depth."
msgstr "" msgstr ""
"鎖定深度應小於表皮深度。\n" "鎖定深度應小於表皮深度。\n"
@@ -4864,6 +4872,9 @@ msgstr ""
"是 - 自動調整這些設定並啟用花瓶模式\n" "是 - 自動調整這些設定並啟用花瓶模式\n"
"否 - 不使用花瓶模式" "否 - 不使用花瓶模式"
msgid "N/A"
msgstr "不適用"
msgid "Printing" msgid "Printing"
msgstr "列印中" msgstr "列印中"
@@ -5323,9 +5334,6 @@ msgstr "無效的格式。請使用 N、N#K 或逗號分隔的清單,每個項
msgid "Invalid format. Expected vector format: \"%1%\"" msgid "Invalid format. Expected vector format: \"%1%\""
msgstr "無效格式,應該是「%1%」這種格式" msgstr "無效格式,應該是「%1%」這種格式"
msgid "N/A"
msgstr "不適用"
# AI Translated # AI Translated
msgid "System agents" msgid "System agents"
msgstr "系統代理程式" msgstr "系統代理程式"
@@ -6281,16 +6289,22 @@ msgstr "另存專案為"
msgid "Save current project as" msgid "Save current project as"
msgstr "將目前專案另存為" msgstr "將目前專案另存為"
msgid "Publish 3MF"
msgstr ""
msgid "Export a 3MF file with the selected settings embedded"
msgstr ""
msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF"
msgstr "匯入 3MF/STL/STEP/SVG/OBJ/AMF" msgstr "匯入 3MF/STL/STEP/SVG/OBJ/AMF"
msgid "Load a model" msgid "Load a model"
msgstr "載入模型" msgstr "載入模型"
msgid "Import Zip Archive" msgid "Import ZIP Archive"
msgstr "匯入壓縮檔" msgstr "匯入壓縮檔"
msgid "Load models contained within a zip archive" msgid "Load models contained within a ZIP archive"
msgstr "載入壓縮檔中的模型" msgstr "載入壓縮檔中的模型"
msgid "Import Configs" msgid "Import Configs"
@@ -7799,6 +7813,10 @@ msgstr "自訂列印板參數"
msgid "The %s nozzle can not print %s." msgid "The %s nozzle can not print %s."
msgstr "%s 噴嘴無法列印 %s。" msgstr "%s 噴嘴無法列印 %s。"
# AI Translated
msgid "Printing mixed-color filament on a single-extruder printer requires frequent filament changes and flushing, which may significantly increase waste and the risk of nozzle / waste-chute clogging."
msgstr "在單擠出機列印裝置上列印混色線材需要頻繁換料與清理,可能大幅增加廢料以及噴嘴/廢料槽堵塞的風險。"
#, boost-format #, boost-format
msgid "Mixing %1% with %2% in printing is not recommended.\n" msgid "Mixing %1% with %2% in printing is not recommended.\n"
msgstr "不建議在列印時混用 %1% 和 %2%。\n" msgstr "不建議在列印時混用 %1% 和 %2%。\n"
@@ -7924,12 +7942,44 @@ msgstr "從 AMS 同步線材清單"
msgid "Set filaments to use" msgid "Set filaments to use"
msgstr "設定可選擇的線材" msgstr "設定可選擇的線材"
# AI Translated
msgid "Add Mixed Filament"
msgstr "新增混合線材"
# AI Translated
msgid "Mixed Filament"
msgstr "混合線材"
# AI Translated
msgid "Remove last mixed filament"
msgstr "移除最後一個混合線材"
# AI Translated
msgid "Add mixed filament"
msgstr "新增混合線材"
# AI Translated
msgid "Mixed filament has invalid or mismatched components. Please re-edit affected entries."
msgstr "混合線材的成分無效或不相符。請重新編輯受影響的項目。"
msgid "Search plate, object and part." msgid "Search plate, object and part."
msgstr "搜尋列印板、物件和零件。" msgstr "搜尋列印板、物件和零件。"
msgid "Pellets" msgid "Pellets"
msgstr "顆粒" msgstr "顆粒"
# AI Translated
msgid "Mixed filament has broken component references"
msgstr "混合線材的成分參照已失效"
# AI Translated
msgid "Edit / Delete / Merge"
msgstr "編輯 / 刪除 / 合併"
# AI Translated
msgid "The target mixed filament uses this physical filament as a component. Merging will remove this physical filament and may invalidate the mixed filament. Continue?"
msgstr "目標混合線材使用此實體線材作為成分。合併將移除此實體線材,並可能使該混合線材失效。是否繼續?"
#, c-format, boost-format #, c-format, boost-format
msgid "After completing your operation, %s project will be closed and create a new project." msgid "After completing your operation, %s project will be closed and create a new project."
msgstr "完成操作後,%s 專案將關閉並建立新專案。" msgstr "完成操作後,%s 專案將關閉並建立新專案。"
@@ -8066,7 +8116,13 @@ msgstr "請確認這些預設中的 G-code 是安全的,以防止對列印裝
msgid "Customized Preset" msgid "Customized Preset"
msgstr "自訂預設" msgstr "自訂預設"
msgid "Component name(s) inside step file not in UTF8 format!" msgid "Some published settings could not be applied:"
msgstr ""
msgid "Some filament slots were changed:"
msgstr ""
msgid "Component name(s) inside step file not in UTF-8 format!"
msgstr "STEP 檔案內部元件的名稱不是 UTF-8 格式!" msgstr "STEP 檔案內部元件的名稱不是 UTF-8 格式!"
# AI Translated # AI Translated
@@ -8089,7 +8145,7 @@ msgstr "物件的體積為零"
#, c-format, boost-format #, c-format, boost-format
msgid "" msgid ""
"The object from file %s is too small, and may be in meters or inches.\n" "The object from file %s is too small, and may be in meters or inches.\n"
" Do you want to scale to millimeters?" "Do you want to scale to millimeters?"
msgstr "" msgstr ""
"檔案 %s 中的物件太小可能以公尺M或英吋Inches為單位。\n" "檔案 %s 中的物件太小可能以公尺M或英吋Inches為單位。\n"
"是否要轉換成毫米mm" "是否要轉換成毫米mm"
@@ -8110,6 +8166,14 @@ msgstr ""
msgid "Multi-part object detected" msgid "Multi-part object detected"
msgstr "偵測到多部分物件" msgstr "偵測到多部分物件"
# AI Translated
msgid "Matching textures to filaments"
msgstr "正在將紋理對應到線材"
# AI Translated
msgid "Texture Import Warning"
msgstr "紋理匯入警告"
msgid "Load these files as a single object with multiple parts?\n" msgid "Load these files as a single object with multiple parts?\n"
msgstr "將這些檔案載入為一個多零件物件?\n" msgstr "將這些檔案載入為一個多零件物件?\n"
@@ -8320,6 +8384,22 @@ msgstr ""
msgid "Sync now" msgid "Sync now"
msgstr "立即同步" msgstr "立即同步"
# AI Translated
msgid "Texture import failed. The model appears to contain texture data, but the texture import process could not be completed. The model will be imported as geometry only."
msgstr "紋理匯入失敗。模型中似乎包含紋理資料,但紋理匯入程序未能完成。將僅匯入模型的幾何資料。"
# AI Translated
msgid "Applying texture colors..."
msgstr "正在套用紋理顏色..."
# AI Translated
msgid "Updating 3D view..."
msgstr "正在更新 3D 檢視..."
# AI Translated
msgid "Texture colors applied."
msgstr "紋理顏色已套用。"
msgid "You can keep the modified presets for the new project or discard them" msgid "You can keep the modified presets for the new project or discard them"
msgstr "您可以將修改後的預設檔保留到新專案中或者忽略這些修改" msgstr "您可以將修改後的預設檔保留到新專案中或者忽略這些修改"
@@ -8452,6 +8532,17 @@ msgstr "切片檔案另存為:"
msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer." msgid "The file %s has been sent to the printer's storage space and can be viewed on the printer."
msgstr "檔案 %s 已經傳送到列印裝置的儲存空間,可以在列印裝置上瀏覽。" msgstr "檔案 %s 已經傳送到列印裝置的儲存空間,可以在列印裝置上瀏覽。"
msgid "Publish 3MF file as:"
msgstr ""
msgid ""
"Failed to export the published 3MF file.\n"
"Please check whether the folder exists online or if other programs have the file open."
msgstr ""
msgid "Publish"
msgstr "發布"
msgid "The nozzle type is not set. Please set the nozzle and try again." msgid "The nozzle type is not set. Please set the nozzle and try again."
msgstr "噴嘴類型尚未設定。請設定噴嘴後再試一次。" msgstr "噴嘴類型尚未設定。請設定噴嘴後再試一次。"
@@ -9563,6 +9654,10 @@ msgstr "螺旋花瓶模式"
msgid "First layer filament sequence" msgid "First layer filament sequence"
msgstr "首層線材列印順序" msgstr "首層線材列印順序"
# AI Translated
msgid "The filament list contains mixed filaments. Custom filament sequence will not take effect."
msgstr "線材清單中包含混合線材。自訂線材順序將不會生效。"
msgid "By Layer" msgid "By Layer"
msgstr "逐層" msgstr "逐層"
@@ -9590,9 +9685,6 @@ msgstr "發布頁面"
msgid "Note: The preparation may take several minutes. Please be patient." msgid "Note: The preparation may take several minutes. Please be patient."
msgstr "提示:發布前需要一些準備時間,請耐心等待。" msgstr "提示:發布前需要一些準備時間,請耐心等待。"
msgid "Publish"
msgstr "發布"
msgid "Publish was canceled" msgid "Publish was canceled"
msgstr "發布已取消" msgstr "發布已取消"
@@ -9608,6 +9700,64 @@ msgstr "正在上傳資料"
msgid "Jump to webpage" msgid "Jump to webpage"
msgstr "跳至網頁" msgstr "跳至網頁"
msgid "Material"
msgstr ""
msgid "Mixed filament"
msgstr ""
msgid "Some mixed filaments rely on filaments that will not be published:"
msgstr ""
#, c-format, boost-format
msgid "Filament %d (mixed)"
msgstr ""
msgid "needs"
msgstr ""
msgid "not enabled"
msgstr ""
msgid "material not published"
msgstr ""
msgid "To publish a mixed filament, enable every filament it uses and choose Full Publish or check its Type requirement."
msgstr ""
msgid "Publish anyway"
msgstr ""
msgid "Publish 3MF..."
msgstr ""
msgid "Select which settings to be published in the 3MF file"
msgstr ""
msgid "Publish 3MF Wiki"
msgstr ""
msgid "Publish 3MF Video Guide"
msgstr ""
msgid "Mixed filament - published as a whole when \"Enable\" above is selected"
msgstr ""
msgid "Publish this mixed filament and enable + Full Publish its component filaments"
msgstr ""
msgid "Publish this filament slot in the 3MF file"
msgstr ""
msgid "Full Publish"
msgstr ""
msgid "Embed the entire filament of this slot in the 3MF file"
msgstr ""
msgid "Filter non-selected"
msgstr ""
#, c-format, boost-format #, c-format, boost-format
msgid "Save %s as" msgid "Save %s as"
msgstr "另存 %s 為" msgstr "另存 %s 為"
@@ -10944,12 +11094,12 @@ msgid "No modifications need to be copied."
msgstr "沒有需要複製的修改。" msgstr "沒有需要複製的修改。"
# AI Translated # AI Translated
msgid "Copy paramters" msgid "Copy parameters"
msgstr "複製參數" msgstr "複製參數"
# AI Translated # AI Translated
#, c-format, boost-format #, c-format, boost-format
msgid "Modify paramters of %s" msgid "Modify parameters of %s"
msgstr "修改 %s 的參數" msgstr "修改 %s 的參數"
# AI Translated # AI Translated
@@ -11466,27 +11616,6 @@ msgstr "線材更換時產生的廢料體積"
msgid "Please choose the filament colour" msgid "Please choose the filament colour"
msgstr "請選擇線材顏色" msgstr "請選擇線材顏色"
msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
msgstr "原生 Wayland 即時檢視需要 GStreamer GTK 視訊接收器。請為 GStreamer 安裝 gtksink 外掛程式,然後重新啟動 OrcaSlicer。"
msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
msgstr "無法初始化原生 Wayland GStreamer 視訊接收器。請檢查您的 GStreamer GTK 外掛程式安裝。"
msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
msgstr "執行此設定需要 Windows Media Player您是否要啟用 Windows Media Player"
msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
msgstr "「BambuSource 未正確註冊為媒體播放模組!請點選『是』進行重新註冊,過程中會有兩次提示"
msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
msgstr "缺少用於媒體播放的已註冊 BambuSource 元件!請重新安裝 OrcaSlicer 或尋求社群協助。"
msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
msgstr "BambuSource 來自其他安裝版本,可能導致影片播放異常!請點選『是』進行修復。"
msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
msgstr "您的系統缺少 GStreamer 的 H.264 編解碼器,這是播放影片所必需的。(請嘗試安裝 gstreamer1.0-plugins-bad 或 gstreamer1.0-libav 套件,然後重新啟動 Orca Slicer。"
msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." msgid "Cloud agent is not available. Please restart OrcaSlicer and try again."
msgstr "雲端代理無法使用。請重新啟動 OrcaSlicer 後再試一次。" msgstr "雲端代理無法使用。請重新啟動 OrcaSlicer 後再試一次。"
@@ -12195,6 +12324,10 @@ msgstr "如果您仍想列印,可以在「偏好設定 / 控制 / 切片 / 移
msgid "No extrusions under current settings." msgid "No extrusions under current settings."
msgstr "根據目前設定,不會進行任何列印。" msgstr "根據目前設定,不會進行任何列印。"
# AI Translated
msgid "A gradient mixed filament is used, but 'Mixed color sublayer' is disabled. The gradient will not be printed."
msgstr "使用了漸層混合線材,但「混色子層」已停用。漸層將不會列印。"
msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled." msgid "Smooth mode of timelapse is not supported when \"by object\" sequence is enabled."
msgstr "逐件列印模式下不支援使用平滑模式的縮時錄影。" msgstr "逐件列印模式下不支援使用平滑模式的縮時錄影。"
@@ -12231,6 +12364,10 @@ msgstr "您可能想要減小模型的尺寸或更改目前的列印設定並重
msgid "Variable layer height is not supported with Organic supports." msgid "Variable layer height is not supported with Organic supports."
msgstr "有機樹支撐不支持可變層高。" msgstr "有機樹支撐不支持可變層高。"
# AI Translated
msgid "The wipe tower filament cannot be a mixed filament."
msgstr "換料塔線材不能是混合線材。"
msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution." msgid "Different nozzle diameters and different filament diameters may not work well when the prime tower is enabled. It's very experimental, so please proceed with caution."
msgstr "當啟用換料時,不同的噴嘴直徑和線材直徑可能無法正常配合。此功能屬於實驗性階段,請小心使用。" msgstr "當啟用換料時,不同的噴嘴直徑和線材直徑可能無法正常配合。此功能屬於實驗性階段,請小心使用。"
@@ -12578,7 +12715,7 @@ msgstr "mm 或 %"
msgid "Other layers" msgid "Other layers"
msgstr "其它層" msgstr "其它層"
msgid "Bed temperature for layers except the initial one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate SuperTack."
msgstr "除首層外的其他層的熱床溫度。0值表示該線材不支援在低溫增穩列印板上列印。" msgstr "除首層外的其他層的熱床溫度。0值表示該線材不支援在低溫增穩列印板上列印。"
msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate." msgid "This is the bed temperature for layers except for the first one. A value of 0 means the filament does not support printing on the Cool Plate."
@@ -13908,6 +14045,8 @@ msgstr "每一層列印時間"
msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time." msgid "The part cooling fan will be enabled for layers where the estimated time is shorter than this value. Fan speed is interpolated between the minimum and maximum fan speeds according to layer printing time."
msgstr "當層預估列印時間小於該數值時,物件冷卻風扇將會被開啟。風扇轉速將根據層列印時間在最大和最小風扇轉速之間自動調整" msgstr "當層預估列印時間小於該數值時,物件冷卻風扇將會被開啟。風扇轉速將根據層列印時間在最大和最小風扇轉速之間自動調整"
# AI Translated
msgctxt "second"
msgid "s" msgid "s"
msgstr "秒" msgstr "秒"
@@ -14213,6 +14352,62 @@ msgstr "支撐材料"
msgid "Support material is commonly used to print supports and support interfaces." msgid "Support material is commonly used to print supports and support interfaces."
msgstr "支撐材料通常用於列印支撐體和支撐接觸面" msgstr "支撐材料通常用於列印支撐體和支撐接觸面"
# AI Translated
msgid "Is mixed filament"
msgstr "是否為混合線材"
# AI Translated
msgid "Whether this filament slot is a mixed filament composed of multiple physical filaments"
msgstr "此線材槽是否為由多種實體線材組成的混合線材"
# AI Translated
msgid "Mixed filament components"
msgstr "混合線材成分"
# AI Translated
msgid "Comma-separated 1-based indices of component filaments, e.g. \"1,3\""
msgstr "以逗號分隔的成分線材序號(從 1 開始),例如 \"1,3\""
# AI Translated
msgid "Mixed filament sublayer ratios"
msgstr "混合線材子層比例"
# AI Translated
msgid "Comma-separated ratio values summing to 1.0, e.g. \"0.7,0.3\""
msgstr "以逗號分隔、總和為 1.0 的比例值,例如 \"0.7,0.3\""
# AI Translated
msgid "Mixed filament gradient"
msgstr "混合線材漸層"
# AI Translated
msgid "Enable Z-direction gradient mode for mixed filament sub-layers. When enabled, the sub-layer ratios vary linearly across layers."
msgstr "為混合線材的子層啟用 Z 方向漸層模式。啟用後,子層比例會隨層數線性變化。"
# AI Translated
msgid "Mixed filament gradient range"
msgstr "混合線材漸層範圍"
# AI Translated
msgid "Start and end ratios for the first component in gradient mode. Comma-separated pair, e.g. \"0.10,0.90\" means 10% to 90%."
msgstr "漸層模式下第一個成分的起始與結束比例。以逗號分隔的一對數值,例如 \"0.10,0.90\" 表示從 10% 到 90%。"
# AI Translated
msgid "Mixed filament gradient curve"
msgstr "混合線材漸層曲線"
# AI Translated
msgid "Optional Photoshop-style custom curve mapping Z progress to the first component ratio. Encoded as pipe-separated control points, either \"x,y\" (legacy) or \"x,y,m_in,m_out\" when a tangent override is needed (empty token or \"nan\" means use PCHIP default). x in [0,1]; y is clamped to the configured ratio range, e.g. \"0,0.15|0.5,0.50|1,0.85\". When empty, the linear gradient_range is used instead."
msgstr "選用的 Photoshop 風格自訂曲線,將 Z 方向進度對應到第一個成分的比例。以直立線分隔的控制點進行編碼,格式為 \"x,y\"(舊格式)或在需要覆寫切線時使用 \"x,y,m_in,m_out\"(留空或填入 \"nan\" 表示使用 PCHIP 預設值。x 的取值範圍為 [0,1]y 會被限制在所設定的比例範圍內,例如 \"0,0.15|0.5,0.50|1,0.85\"。留空時改用線性的 gradient_range。"
# AI Translated
msgid "Mixed filament per-part gradient"
msgstr "混合線材逐零件漸層"
# AI Translated
msgid "When gradient mode is enabled, apply the gradient to each part of an assembly independently rather than treating the whole assembly as one Z range."
msgstr "啟用漸層模式時,對組合體中的每個零件分別套用漸層,而不是將整個組合體視為單一 Z 範圍。"
msgid "Filament printable" msgid "Filament printable"
msgstr "線材可列印" msgstr "線材可列印"
@@ -15465,6 +15660,7 @@ msgid "The allowed maximum output force of Y axis"
msgstr "Y 軸允許的最大輸出力" msgstr "Y 軸允許的最大輸出力"
# AI Translated # AI Translated
msgctxt "Newton"
msgid "N" msgid "N"
msgstr "N" msgstr "N"
@@ -15477,6 +15673,7 @@ msgid "The machine bed mass load of Y axis"
msgstr "Y 軸的機器床台質量負載" msgstr "Y 軸的機器床台質量負載"
# AI Translated # AI Translated
msgctxt "gram"
msgid "g" msgid "g"
msgstr "g" msgstr "g"
@@ -15790,7 +15987,7 @@ msgstr "從切割區域到垃圾桶的起始和結束點。"
msgid "Reduce infill retraction" msgid "Reduce infill retraction"
msgstr "減小填充回抽" msgstr "減小填充回抽"
msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that z-hop is also not performed in areas where retraction is skipped." msgid "Don't retract when the travel is entirely within an infill area. That means the oozing can't been seen. This can reduce times of retraction for complex model and save printing time, but make slicing and G-code generating slower. Note that Z-hop is also not performed in areas where retraction is skipped."
msgstr "當空駛完全在填充區域內時不觸發回抽。這意味著即使漏料也是不可見的。對於複雜模型,該設定能夠減少回抽次數以及列印時長,但是會造成 G-code 產生變慢" msgstr "當空駛完全在填充區域內時不觸發回抽。這意味著即使漏料也是不可見的。對於複雜模型,該設定能夠減少回抽次數以及列印時長,但是會造成 G-code 產生變慢"
msgid "This option will drop the temperature of the inactive extruders to prevent oozing." msgid "This option will drop the temperature of the inactive extruders to prevent oozing."
@@ -15961,7 +16158,7 @@ msgstr "擦拭後的回抽量"
# AI Translated # AI Translated
#, no-c-format, no-boost-format #, no-c-format, no-boost-format
msgid "" msgid ""
"The length of fast retraction after wipe, relative to retraction length.\n" "This is the length of fast retraction after wipe, relative to retraction length.\n"
"The value will be clamped by 100% minus the retract amount before the wipe value." "The value will be clamped by 100% minus the retract amount before the wipe value."
msgstr "" msgstr ""
"擦拭後快速回抽的長度,相對於回抽長度。\n" "擦拭後快速回抽的長度,相對於回抽長度。\n"
@@ -16008,7 +16205,7 @@ msgstr "在換工具之前觸發回抽時,線材會依指定的長度回抽(
msgid "Z-hop height" msgid "Z-hop height"
msgstr "Z 抬升高度" msgstr "Z 抬升高度"
msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift z can prevent stringing." msgid "Whenever there is a retraction, the nozzle is lifted a little to create clearance between the nozzle and the print. This prevents the nozzle from hitting the print when traveling more. Using spiral lines to lift Z can prevent stringing."
msgstr "回抽完成之後噴嘴輕微抬升和列印物件之間產生一定間隙。這能夠避免空駛時噴嘴和列印物件剮蹭和碰撞。使用螺旋線抬升z能夠減少拉絲" msgstr "回抽完成之後噴嘴輕微抬升和列印物件之間產生一定間隙。這能夠避免空駛時噴嘴和列印物件剮蹭和碰撞。使用螺旋線抬升z能夠減少拉絲"
msgid "Z-hop lower boundary" msgid "Z-hop lower boundary"
@@ -17041,6 +17238,14 @@ msgstr ""
"\n" "\n"
"在以下的『擦拭前的回抽量』設定中設定一個值,將在擦拭之前執行任何額外的回抽操作;否則,將在擦拭之後執行。" "在以下的『擦拭前的回抽量』設定中設定一個值,將在擦拭之前執行任何額外的回抽操作;否則,將在擦拭之後執行。"
# AI Translated
msgid "Mixed color sublayer"
msgstr "混色子層"
# AI Translated
msgid "Enable mixed color sublayer splitting. When enabled, layers containing mixed color filaments will be split into sub-layers to achieve color mixing effects."
msgstr "啟用混色子層分割。啟用後,含有混色線材的層將被分割為子層,以達成混色效果。"
msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects." msgid "The wiping tower can be used to clean up residue on the nozzle and stabilize the chamber pressure inside the nozzle in order to avoid appearance defects when printing objects."
msgstr "換料塔的功能是用於清除噴嘴上的殘留物,同時穩定噴嘴內的壓力,從而避免列印物件時出現外觀瑕疵。" msgstr "換料塔的功能是用於清除噴嘴上的殘留物,同時穩定噴嘴內的壓力,從而避免列印物件時出現外觀瑕疵。"
@@ -18110,6 +18315,10 @@ msgstr "模型檔案網格化失敗或沒有有效形狀"
msgid "The supplied file couldn't be read because it's empty." msgid "The supplied file couldn't be read because it's empty."
msgstr "無法讀取提供的檔案,因為該檔案為空" msgstr "無法讀取提供的檔案,因為該檔案為空"
# AI Translated
msgid "The file format is incompatible and cannot be parsed."
msgstr "檔案格式不相容,無法解析。"
msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension." msgid "Unknown file format: input file must have .stl, .obj, or .amf(.xml) extension."
msgstr "檔案格式未知。輸入的檔案必須是 .stl、.obj 或 .amf(.xml) 格式。" msgstr "檔案格式未知。輸入的檔案必須是 .stl、.obj 或 .amf(.xml) 格式。"
@@ -19573,19 +19782,19 @@ msgstr "僅顯示對列印裝置、線材和處理預設設定有變更的列印
msgid "Only display the filament names with changes to filament presets." msgid "Only display the filament names with changes to filament presets."
msgstr "僅顯示對線材預設設定有變更的線材名稱。" msgstr "僅顯示對線材預設設定有變更的線材名稱。"
msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a zip." msgid "Only printer names with user printer presets will be displayed, and each preset you choose will be exported as a ZIP archive."
msgstr "只有具有使用者列印裝置預設設定的列印裝置名稱會顯示,您選擇的每個預設設定將以 zip 檔案格式匯出。" msgstr "只有具有使用者列印裝置預設設定的列印裝置名稱會顯示,您選擇的每個預設設定將以 zip 檔案格式匯出。"
msgid "" msgid ""
"Only the filament names with user filament presets will be displayed, \n" "Only the filament names with user filament presets will be displayed, \n"
"and all user filament presets in each filament name you select will be exported as a zip." "and all user filament presets in each filament name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"只有具有使用者線材預設設定的線材名稱會顯示,\n" "只有具有使用者線材預設設定的線材名稱會顯示,\n"
"您選擇的每個線材名稱中的所有使用者線材預設設定將以 zip 檔案格式匯出。" "您選擇的每個線材名稱中的所有使用者線材預設設定將以 zip 檔案格式匯出。"
msgid "" msgid ""
"Only printer names with changed process presets will be displayed, \n" "Only printer names with changed process presets will be displayed, \n"
"and all user process presets in each printer name you select will be exported as a zip." "and all user process presets in each printer name you select will be exported as a ZIP archive."
msgstr "" msgstr ""
"只有具有變更過處理預設設定的列印裝置名稱會顯示,\n" "只有具有變更過處理預設設定的列印裝置名稱會顯示,\n"
"您選擇的每個列印裝置名稱中的所有使用者處理預設設定將以 zip 檔案格式匯出。" "您選擇的每個列印裝置名稱中的所有使用者處理預設設定將以 zip 檔案格式匯出。"
@@ -19826,7 +20035,7 @@ msgid "We need information for diagnosing source of the issue. Check wiki page f
msgstr "我們需要相關資訊以診斷問題來源。請查看 wiki 頁面以取得詳細指南。" msgstr "我們需要相關資訊以診斷問題來源。請查看 wiki 頁面以取得詳細指南。"
# AI Translated # AI Translated
msgid "Pack button collects project file and logs of current session onto a zip file." msgid "Pack button collects project file and logs of current session onto a ZIP archive."
msgstr "「打包」按鈕會將目前工作階段的專案檔案與記錄收集到一個 zip 檔案中。" msgstr "「打包」按鈕會將目前工作階段的專案檔案與記錄收集到一個 zip 檔案中。"
# AI Translated # AI Translated
@@ -19882,7 +20091,7 @@ msgid "Stored logs"
msgstr "已儲存的記錄" msgstr "已儲存的記錄"
# AI Translated # AI Translated
msgid "Packs all stored logs onto a zip file." msgid "Packs all stored logs onto a ZIP archive."
msgstr "將所有已儲存的記錄打包成一個 zip 檔案。" msgstr "將所有已儲存的記錄打包成一個 zip 檔案。"
# AI Translated # AI Translated
@@ -19962,7 +20171,7 @@ msgstr "找不到列印裝置類型,請手動選取。"
msgid "Authorizing..." msgid "Authorizing..."
msgstr "授權中..." msgstr "授權中..."
msgid "Error. Can't get api token for authorization" msgid "Error. Can't get API token for authorization"
msgstr "錯誤。無法取得用於授權的 API token。" msgstr "錯誤。無法取得用於授權的 API token。"
msgid "Could not parse server response." msgid "Could not parse server response."
@@ -20414,8 +20623,8 @@ msgid "Enable smart filament assign: Assign one filament to multiple nozzles to
msgstr "啟用智慧線材指派:將一種線材指派給多個噴嘴以最大化節省" msgstr "啟用智慧線材指派:將一種線材指派給多個噴嘴以最大化節省"
# AI Translated # AI Translated
msgid "Fila Saving" msgid "File Saving"
msgstr "線材節省" msgstr "檔案儲存"
msgid "Don't remind me again" msgid "Don't remind me again"
msgstr "不要再提醒我" msgstr "不要再提醒我"
@@ -20701,6 +20910,15 @@ msgstr "此操作無法撤消。繼續?"
msgid "Skipping objects." msgid "Skipping objects."
msgstr "跳過物件。" msgstr "跳過物件。"
msgid "Material Ratio"
msgstr ""
msgid "Model Height"
msgstr ""
msgid "Ratio"
msgstr ""
msgid "Select Filament" msgid "Select Filament"
msgstr "選擇線材" msgstr "選擇線材"
@@ -20780,6 +20998,9 @@ msgstr "立即重新啟動"
msgid "NO RAMMING AT ALL" msgid "NO RAMMING AT ALL"
msgstr "完全不擠壓" msgstr "完全不擠壓"
msgid "s"
msgstr "秒"
msgid "Volumetric speed" msgid "Volumetric speed"
msgstr "體積速度" msgstr "體積速度"
@@ -21425,6 +21646,39 @@ msgstr ""
"避免翹曲\n" "避免翹曲\n"
"您知道嗎?當列印容易翹曲的材料(如 ABS適當提高熱床溫度可以降低翹曲的機率。" "您知道嗎?當列印容易翹曲的材料(如 ABS適當提高熱床溫度可以降低翹曲的機率。"
#~ msgid "Native Wayland liveview requires the GStreamer GTK video sink. Please install the gtksink plugin for GStreamer, then restart OrcaSlicer."
#~ msgstr "原生 Wayland 即時檢視需要 GStreamer GTK 視訊接收器。請為 GStreamer 安裝 gtksink 外掛程式,然後重新啟動 OrcaSlicer。"
#~ msgid "Failed to initialize the native Wayland GStreamer video sink. Please check your GStreamer GTK plugin installation."
#~ msgstr "無法初始化原生 Wayland GStreamer 視訊接收器。請檢查您的 GStreamer GTK 外掛程式安裝。"
#~ msgid "Windows Media Player is required for this task! Do you want to enable 'Windows Media Player' for your operation system?"
#~ msgstr "執行此設定需要 Windows Media Player您是否要啟用 Windows Media Player"
#~ msgid "BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"
#~ msgstr "「BambuSource 未正確註冊為媒體播放模組!請點選『是』進行重新註冊,過程中會有兩次提示"
#~ msgid "Missing BambuSource component registered for media playing! Please re-install OrcaSlicer or seek community help."
#~ msgstr "缺少用於媒體播放的已註冊 BambuSource 元件!請重新安裝 OrcaSlicer 或尋求社群協助。"
#~ msgid "Using a BambuSource from a different install, video play may not work correctly! Press Yes to fix it."
#~ msgstr "BambuSource 來自其他安裝版本,可能導致影片播放異常!請點選『是』進行修復。"
#~ msgid "Your system is missing H.264 codecs for GStreamer, which are required to play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav packages, then restart Orca Slicer?)"
#~ msgstr "您的系統缺少 GStreamer 的 H.264 編解碼器,這是播放影片所必需的。(請嘗試安裝 gstreamer1.0-plugins-bad 或 gstreamer1.0-libav 套件,然後重新啟動 Orca Slicer。"
# AI Translated
#~ msgid "N"
#~ msgstr "N"
# AI Translated
#~ msgid "g"
#~ msgstr "g"
# AI Translated
#~ msgid "Fila Saving"
#~ msgstr "線材節省"
#~ msgid "" #~ msgid ""
#~ "Layer height is too small.\n" #~ "Layer height is too small.\n"
#~ "It will set to min_layer_height\n" #~ "It will set to min_layer_height\n"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 171 KiB

After

Width:  |  Height:  |  Size: 579 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path d="M1.5,8 14.5,1.5 7.5,14.5 6.3,9.7 Z" style="fill:none;stroke:gray;stroke-linecap:round;stroke-linejoin:round"/></svg>

After

Width:  |  Height:  |  Size: 209 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M12.00,12.00 L12.00,11.96 L12.01,11.92 L12.03,11.89 L12.05,11.85 L12.08,11.82 L12.12,11.80 L12.16,11.78 L12.20,11.76 L12.25,11.75 L12.30,11.75 L12.35,11.75 L12.40,11.77 L12.46,11.79 L12.51,11.81 L12.56,11.85 L12.61,11.89 L12.66,11.94 L12.70,12.00 L12.74,12.06 L12.77,12.14 L12.79,12.21 L12.80,12.29 L12.81,12.38 L12.81,12.47 L12.80,12.56 L12.77,12.65 L12.74,12.74 L12.70,12.83 L12.65,12.92 L12.58,13.01 L12.51,13.09 L12.43,13.17 L12.33,13.24 L12.23,13.30 L12.12,13.36 L12.00,13.40 L11.87,13.43 L11.74,13.46 L11.61,13.46 L11.47,13.46 L11.33,13.45 L11.18,13.41 L11.04,13.37 L10.90,13.31 L10.76,13.24 L10.63,13.15 L10.50,13.05 L10.38,12.93 L10.27,12.81 L10.17,12.67 L10.08,12.51 L10.01,12.35 L9.95,12.18 L9.90,12.00 L9.87,11.81 L9.86,11.62 L9.86,11.43 L9.88,11.23 L9.92,11.03 L9.98,10.83 L10.06,10.64 L10.15,10.45 L10.27,10.27 L10.40,10.09 L10.55,9.93 L10.72,9.78 L10.90,9.64 L11.10,9.52 L11.31,9.41 L11.53,9.32 L11.76,9.25 L12.00,9.20 L12.25,9.17 L12.50,9.17 L12.75,9.18 L13.01,9.22 L13.27,9.29 L13.52,9.37 L13.76,9.48 L14.00,9.62 L14.23,9.77 L14.44,9.95 L14.64,10.15 L14.83,10.37 L15.00,10.60 L15.14,10.86 L15.27,11.12 L15.37,11.41 L15.45,11.70 L15.50,12.00 L15.53,12.31 L15.52,12.62 L15.49,12.94 L15.44,13.25 L15.35,13.56 L15.23,13.87 L15.09,14.16 L14.92,14.45 L14.72,14.72 L14.50,14.98 L14.25,15.22 L13.98,15.44 L13.69,15.63 L13.38,15.80 L13.06,15.94 L12.72,16.06 L12.36,16.15 L12.00,16.20 L11.63,16.22 L11.26,16.21 L10.88,16.17 L10.51,16.09 L10.14,15.98 L9.78,15.84 L9.43,15.66 L9.10,15.46 L8.78,15.22 L8.48,14.95 L8.21,14.65 L7.96,14.33 L7.74,13.99 L7.54,13.62 L7.38,13.24 L7.25,12.84 L7.16,12.42 L7.10,12.00 L7.08,11.57 L7.10,11.14 L7.15,10.70 L7.25,10.27 L7.38,9.85 L7.55,9.43 L7.76,9.03 L8.01,8.65 L8.29,8.29 L8.60,7.95 L8.94,7.64 L9.32,7.35 L9.72,7.10 L10.14,6.88 L10.58,6.70 L11.04,6.56 L11.52,6.46 L12.00,6.40 L12.49,6.38 L12.99,6.41 L13.48,6.48 L13.97,6.59 L14.45,6.75 L14.92,6.95 L15.37,7.19 L15.80,7.47 L16.21,7.79 L16.59,8.15 L16.94,8.54 L17.25,8.97 L17.53,9.42 L17.77,9.90 L17.97,10.40 L18.13,10.92 L18.24,11.45 L18.30,12.00 L18.31,12.55 L18.28,13.11 L18.20,13.66 L18.07,14.21 L17.89,14.74 L17.66,15.27 L17.38,15.77 L17.06,16.25 L16.70,16.70 L16.30,17.12 L15.86,17.51 L15.38,17.86 L14.88,18.17 L14.34,18.43 L13.78,18.65 L13.20,18.82 L12.61,18.93 L12.00,19.00 L11.39,19.01 L10.77,18.97 L10.16,18.87 L9.55,18.72 L8.96,18.52 L8.38,18.26 L7.83,17.96 L7.30,17.60 L6.80,17.20 L6.34,16.75 L5.92,16.26 L5.53,15.73 L5.20,15.17 L4.91,14.58 L4.68,13.96 L4.49,13.32 L4.37,12.67 L4.30,12.00 L4.29,11.33 L4.34,10.65 L4.45,9.98 L4.62,9.31 L4.85,8.66 L5.13,8.03 L5.47,7.43 L5.86,6.85 L6.31,6.31 L6.80,5.80 L7.34,5.34 L7.92,4.93 L8.53,4.56 L9.18,4.25 L9.86,4.00 L10.55,3.80 L11.27,3.67 L12.00,3.60" style="fill:none;stroke:#009688;stroke-linecap:round;stroke-linejoin:round"/><rect x="1.5" y="1.5" width="21" height="21" rx="2" style="fill:none;stroke:#949494;stroke-linecap:round;stroke-linejoin:round"/></svg>

After

Width:  |  Height:  |  Size: 2.9 KiB

View File

@@ -0,0 +1,607 @@
{
"bambustudio_commit": "66e405477",
"filaments": {
"OF0UJcb6": {
"bambu_id": "GFG60",
"name": "PolyLite PETG",
"type": "PETG",
"vendor": "Polymaker"
},
"OF0wBGNx": {
"bambu_id": "GFB51",
"name": "Bambu ASA-CF",
"type": "ASA-CF",
"vendor": "Bambu Lab"
},
"OF1UNk9P": {
"bambu_id": "GFP97",
"name": "Generic PP",
"type": "PP",
"vendor": "Generic"
},
"OF2GCW1l": {
"bambu_id": "GFSNL08",
"name": "SUNLU PETG",
"type": "PETG",
"vendor": "SUNLU"
},
"OF2VFe4J": {
"bambu_id": "GFN04",
"name": "Bambu PAHT-CF",
"type": "PA-CF",
"vendor": "Bambu Lab"
},
"OF342jVN": {
"bambu_id": "GFA10",
"name": "Bambu PLA Tough+",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OF4RvVuU": {
"bambu_id": "GFT02",
"name": "Bambu PPS-CF",
"type": "PPS-CF",
"vendor": "Bambu Lab"
},
"OF54B0S0": {
"bambu_id": "GFN06",
"name": "Bambu PPA-CF",
"type": "PPA-CF",
"vendor": "Bambu Lab"
},
"OF5CgdDq": {
"bambu_id": "GFL00",
"name": "PolyLite PLA",
"type": "PLA",
"vendor": "Polymaker"
},
"OF6rdQ6M": {
"bambu_id": "GFT98",
"name": "Generic PPS-CF",
"type": "PPS-CF",
"vendor": "Generic"
},
"OF74KeQR": {
"bambu_id": "GFR98",
"name": "Generic PHA",
"type": "PHA",
"vendor": "Generic"
},
"OF7lOgYF": {
"bambu_id": "GFG96",
"name": "Generic PETG HF",
"type": "PETG",
"vendor": "Generic"
},
"OF8Tlg47": {
"bambu_id": "GFN96",
"name": "Generic PPA-GF",
"type": "PPA-GF",
"vendor": "Generic"
},
"OF8tPByX": {
"bambu_id": "GFN97",
"name": "Generic PPA-CF",
"type": "PPA-CF",
"vendor": "Generic"
},
"OF9OlTWH": {
"bambu_id": "GFA07",
"name": "Bambu PLA Marble",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFAnyRUI": {
"bambu_id": "GFS02",
"name": "Bambu Support For PLA",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFBSW57R": {
"bambu_id": "GFA11",
"name": "Bambu PLA Aero",
"type": "PLA-AERO",
"vendor": "Bambu Lab"
},
"OFBw6eEG": {
"bambu_id": "GFL05",
"name": "Overture Matte PLA",
"type": "PLA",
"vendor": "Overture"
},
"OFCD8qiU": {
"bambu_id": "GFR99",
"name": "Generic EVA",
"type": "EVA",
"vendor": "Generic"
},
"OFDGigEI": {
"bambu_id": "GFA13",
"name": "Bambu PLA Dynamic",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFDSrzZ8": {
"bambu_id": "GFL99",
"name": "Generic PLA",
"type": "PLA",
"vendor": "Generic"
},
"OFDvXujf": {
"bambu_id": "GFS99",
"name": "Generic PVA",
"type": "PVA",
"vendor": "Generic"
},
"OFDxfPgH": {
"bambu_id": "GFA08",
"name": "Bambu PLA Sparkle",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFEGNJD4": {
"bambu_id": "GFA05",
"name": "Bambu PLA Silk",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFEkPBwx": {
"bambu_id": "GFA12",
"name": "Bambu PLA Glow",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFEswT5W": {
"bambu_id": "GFA50",
"name": "Bambu PLA-CF",
"type": "PLA-CF",
"vendor": "Bambu Lab"
},
"OFFNYwWR": {
"bambu_id": "GFN03",
"name": "Bambu PA-CF",
"type": "PA-CF",
"vendor": "Bambu Lab"
},
"OFFbSnCD": {
"bambu_id": "GFA17",
"name": "Bambu PLA Translucent",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFFvzqcd": {
"bambu_id": "GFG00",
"name": "Bambu PETG Basic",
"type": "PETG",
"vendor": "Bambu Lab"
},
"OFHWSM21": {
"bambu_id": "GFL54",
"name": "Fiberon PET-CF",
"type": "PET-CF",
"vendor": "Polymaker"
},
"OFHa48An": {
"bambu_id": "GFT01",
"name": "Bambu PET-CF",
"type": "PET-CF",
"vendor": "Bambu Lab"
},
"OFHmPYRy": {
"bambu_id": "GFSNL04",
"name": "SUNLU PLA+ 2.0",
"type": "PLA",
"vendor": "SUNLU"
},
"OFIBbYO5": {
"bambu_id": "GFU02",
"name": "Bambu TPU for AMS",
"type": "TPU-AMS",
"vendor": "Bambu Lab"
},
"OFIfnzxC": {
"bambu_id": "GFS05",
"name": "Bambu Support For PLA/PETG",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFKhMPeX": {
"bambu_id": "GFC00",
"name": "Bambu PC",
"type": "PC",
"vendor": "Bambu Lab"
},
"OFLJ8S6I": {
"bambu_id": "GFSNL07",
"name": "SUNLU Wood PLA",
"type": "PLA",
"vendor": "SUNLU"
},
"OFLPAxz3": {
"bambu_id": "GFB98",
"name": "Generic ASA",
"type": "ASA",
"vendor": "Generic"
},
"OFLakOUI": {
"bambu_id": "GFC99",
"name": "Generic PC",
"type": "PC",
"vendor": "Generic"
},
"OFMTK0UC": {
"bambu_id": "GFS03",
"name": "Bambu Support For PA/PET",
"type": "PA",
"vendor": "Bambu Lab"
},
"OFMUWNkp": {
"bambu_id": "GFSNL03",
"name": "SUNLU PLA+",
"type": "PLA",
"vendor": "SUNLU"
},
"OFMjtqTC": {
"bambu_id": "GFA16",
"name": "Bambu PLA Wood",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFNk8bxk": {
"bambu_id": "GFN08",
"name": "Bambu PA6-GF",
"type": "PA-GF",
"vendor": "Bambu Lab"
},
"OFOvv91M": {
"bambu_id": "GFB60",
"name": "PolyLite ABS",
"type": "ABS",
"vendor": "Polymaker"
},
"OFPklMI1": {
"bambu_id": "GFP99",
"name": "Generic PE",
"type": "PE",
"vendor": "Generic"
},
"OFQ3e56w": {
"bambu_id": "GFA15",
"name": "Bambu PLA Galaxy",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFQHiNJs": {
"bambu_id": "GFS01",
"name": "Bambu Support G",
"type": "PA",
"vendor": "Bambu Lab"
},
"OFQLcbps": {
"bambu_id": "GFN98",
"name": "Generic PA-CF",
"type": "PA-CF",
"vendor": "Generic"
},
"OFS2tn6G": {
"bambu_id": "GFL53",
"name": "Fiberon PA612-CF",
"type": "PA",
"vendor": "Polymaker"
},
"OFTHDCqA": {
"bambu_id": "GFA19",
"name": "Bambu PLA Pure",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFTRZ8Y4": {
"bambu_id": "GFG50",
"name": "Bambu PETG-CF",
"type": "PETG-CF",
"vendor": "Bambu Lab"
},
"OFUanySo": {
"bambu_id": "GFA06",
"name": "Bambu PLA Silk+",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFVCkX5w": {
"bambu_id": "GFU01",
"name": "Bambu TPU 95A",
"type": "TPU",
"vendor": "Bambu Lab"
},
"OFW29a9R": {
"bambu_id": "GFL01",
"name": "PolyTerra PLA",
"type": "PLA",
"vendor": "Polymaker"
},
"OFWbdGsC": {
"bambu_id": "GFL98",
"name": "Generic PLA-CF",
"type": "PLA-CF",
"vendor": "Generic"
},
"OFX0ycRQ": {
"bambu_id": "GFL52",
"name": "Fiberon PA12-CF",
"type": "PA-CF",
"vendor": "Polymaker"
},
"OFXIbw5D": {
"bambu_id": "GFA01",
"name": "Bambu PLA Matte",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFXkm8q1": {
"bambu_id": "GFP96",
"name": "Generic PP-CF",
"type": "PP-CF",
"vendor": "Generic"
},
"OFXzQ4yL": {
"bambu_id": "GFB02",
"name": "Bambu ASA-Aero",
"type": "ASA-AERO",
"vendor": "Bambu Lab"
},
"OFY9muEs": {
"bambu_id": "GFB99",
"name": "Generic ABS",
"type": "ABS",
"vendor": "Generic"
},
"OFYPdQJh": {
"bambu_id": "GFG99",
"name": "Generic PETG",
"type": "PETG",
"vendor": "Generic"
},
"OFaQMgRH": {
"bambu_id": "GFA09",
"name": "Bambu PLA Tough",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFc3xdm9": {
"bambu_id": "GFL04",
"name": "Overture PLA",
"type": "PLA",
"vendor": "Overture"
},
"OFcytyoA": {
"bambu_id": "GFL06",
"name": "Fiberon PETG-ESD",
"type": "PETG",
"vendor": "Polymaker"
},
"OFd0Fv0k": {
"bambu_id": "GFP98",
"name": "Generic PE-CF",
"type": "PE-CF",
"vendor": "Generic"
},
"OFdyfQvU": {
"bambu_id": "GFG03",
"name": "Bambu PETG Matte",
"type": "PETG",
"vendor": "Bambu Lab"
},
"OFesA6rF": {
"bambu_id": "GFL96",
"name": "Generic PLA Silk",
"type": "PLA",
"vendor": "Generic"
},
"OFf6mfQO": {
"bambu_id": "GFS06",
"name": "Bambu Support for ABS",
"type": "ABS",
"vendor": "Bambu Lab"
},
"OFfBpSRI": {
"bambu_id": "GFB01",
"name": "Bambu ASA",
"type": "ASA",
"vendor": "Bambu Lab"
},
"OFg57Nmc": {
"bambu_id": "GFC01",
"name": "Bambu PC FR",
"type": "PC",
"vendor": "Bambu Lab"
},
"OFg8ndtj": {
"bambu_id": "GFN99",
"name": "Generic PA",
"type": "PA",
"vendor": "Generic"
},
"OFgbpcy9": {
"bambu_id": "GFU99",
"name": "Generic TPU",
"type": "TPU",
"vendor": "Generic"
},
"OFhuaUQB": {
"bambu_id": "GFB00",
"name": "Bambu ABS",
"type": "ABS",
"vendor": "Bambu Lab"
},
"OFk8t9mz": {
"bambu_id": "GFL55",
"name": "Fiberon PETG-rCF",
"type": "PETG-CF",
"vendor": "Polymaker"
},
"OFkOviHk": {
"bambu_id": "GFL50",
"name": "Fiberon PA6-CF",
"type": "PA6-CF",
"vendor": "Polymaker"
},
"OFknl9Iz": {
"bambu_id": "GFB50",
"name": "Bambu ABS-GF",
"type": "ABS-GF",
"vendor": "Bambu Lab"
},
"OFlfuj2k": {
"bambu_id": "GFU04",
"name": "Bambu TPU 85A",
"type": "TPU",
"vendor": "Bambu Lab"
},
"OFmN2lvw": {
"bambu_id": "GFU98",
"name": "Generic TPU for AMS",
"type": "TPU-AMS",
"vendor": "Generic"
},
"OFmpMwxS": {
"bambu_id": "GFL95",
"name": "Generic PLA High Speed",
"type": "PLA",
"vendor": "Generic"
},
"OFnfxTvi": {
"bambu_id": "GFA18",
"name": "Bambu PLA Lite",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFniMuTN": {
"bambu_id": "GFN05",
"name": "Bambu PA6-CF",
"type": "PA6-CF",
"vendor": "Bambu Lab"
},
"OFo2UF2C": {
"bambu_id": "GFS97",
"name": "Generic BVOH",
"type": "BVOH",
"vendor": "Generic"
},
"OFoYSJKi": {
"bambu_id": "GFG98",
"name": "Generic PETG-CF",
"type": "PETG-CF",
"vendor": "Generic"
},
"OFoiVqVM": {
"bambu_id": "GFA00",
"name": "Bambu PLA Basic",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFovEIbw": {
"bambu_id": "GFG02",
"name": "Bambu PETG HF",
"type": "PETG",
"vendor": "Bambu Lab"
},
"OFpPGSKG": {
"bambu_id": "GFSNL05",
"name": "SUNLU Silk PLA+",
"type": "PLA",
"vendor": "SUNLU"
},
"OFpW4gdi": {
"bambu_id": "GFSNL02",
"name": "SUNLU PLA Matte",
"type": "PLA",
"vendor": "SUNLU"
},
"OFq9svOz": {
"bambu_id": "GFT97",
"name": "Generic PPS",
"type": "PPS",
"vendor": "Generic"
},
"OFqINlYj": {
"bambu_id": "GFL03",
"name": "eSUN PLA+",
"type": "PLA",
"vendor": "eSUN"
},
"OFrKLeE3": {
"bambu_id": "GFA02",
"name": "Bambu PLA Metal",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFsFon5l": {
"bambu_id": "GFS98",
"name": "Generic HIPS",
"type": "HIPS",
"vendor": "Generic"
},
"OFsHSVZc": {
"bambu_id": "GFS00",
"name": "Bambu Support W",
"type": "PLA",
"vendor": "Bambu Lab"
},
"OFsijjtH": {
"bambu_id": "GFP95",
"name": "Generic PP-GF",
"type": "PP-GF",
"vendor": "Generic"
},
"OFtkLO6q": {
"bambu_id": "GFU03",
"name": "Bambu TPU 90A",
"type": "TPU",
"vendor": "Bambu Lab"
},
"OFu1evlr": {
"bambu_id": "GFG97",
"name": "Generic PCTG",
"type": "PCTG",
"vendor": "Generic"
},
"OFvKUnLh": {
"bambu_id": "GFU00",
"name": "Bambu TPU 95A HF",
"type": "TPU",
"vendor": "Bambu Lab"
},
"OFvrXuV7": {
"bambu_id": "GFB61",
"name": "PolyLite ASA",
"type": "ASA",
"vendor": "Polymaker"
},
"OFwPrlCM": {
"bambu_id": "GFG01",
"name": "Bambu PETG Translucent",
"type": "PETG",
"vendor": "Bambu Lab"
},
"OFwaYjL6": {
"bambu_id": "GFL51",
"name": "Fiberon PA6-GF",
"type": "PA-GF",
"vendor": "Polymaker"
},
"OFxUwUeW": {
"bambu_id": "GFSNL06",
"name": "SUNLU PLA Marble",
"type": "PLA",
"vendor": "SUNLU"
},
"OFzyIxba": {
"bambu_id": "GFS04",
"name": "Bambu PVA",
"type": "PVA",
"vendor": "Bambu Lab"
}
},
"generated": "2026-09-04",
"source": "https://github.com/bambulab/BambuStudio"
}

View File

@@ -1,6 +1,6 @@
{ {
"name": "Afinia", "name": "Afinia",
"version": "02.04.00.02", "version": "02.04.00.03",
"force_update": "0", "force_update": "0",
"description": "Afinia configurations", "description": "Afinia configurations",
"machine_model_list": [ "machine_model_list": [

View File

@@ -1,6 +1,6 @@
{ {
"type": "filament", "type": "filament",
"filament_id": "GFB00_01", "filament_id": "OFLfywkp",
"setting_id": "wAJTMxtCY7EoavRi", "setting_id": "wAJTMxtCY7EoavRi",
"name": "Afinia ABS+@HS", "name": "Afinia ABS+@HS",
"from": "system", "from": "system",

View File

@@ -1,6 +1,6 @@
{ {
"type": "filament", "type": "filament",
"filament_id": "GFB00_01", "filament_id": "OFV5wEMe",
"setting_id": "qCDnb2iBaz4hd4vX", "setting_id": "qCDnb2iBaz4hd4vX",
"name": "Afinia ABS@HS", "name": "Afinia ABS@HS",
"from": "system", "from": "system",

View File

@@ -1,6 +1,6 @@
{ {
"type": "filament", "type": "filament",
"filament_id": "GFA00_01", "filament_id": "OF9HCdyQ",
"setting_id": "N3sCgjdjvp6FTtw9", "setting_id": "N3sCgjdjvp6FTtw9",
"name": "Afinia PLA@HS", "name": "Afinia PLA@HS",
"from": "system", "from": "system",

View File

@@ -4,7 +4,7 @@
"inherits": "fdm_filament_tpu", "inherits": "fdm_filament_tpu",
"from": "system", "from": "system",
"setting_id": "zUqTgAEbqTN1EdRl", "setting_id": "zUqTgAEbqTN1EdRl",
"filament_id": "GFU01_01", "filament_id": "OFDJU6R3",
"instantiation": "true", "instantiation": "true",
"filament_vendor": [ "filament_vendor": [
"Afinia" "Afinia"

View File

@@ -1,6 +1,6 @@
{ {
"type": "filament", "type": "filament",
"filament_id": "GFB00_01", "filament_id": "OFXi59OX",
"setting_id": "OxIiEYjbhEvSykaQ", "setting_id": "OxIiEYjbhEvSykaQ",
"name": "Afinia Value ABS@HS", "name": "Afinia Value ABS@HS",
"from": "system", "from": "system",

View File

@@ -1,6 +1,6 @@
{ {
"type": "filament", "type": "filament",
"filament_id": "GFA00_01", "filament_id": "OFgHh8ly",
"setting_id": "BASsUdyvElEVJ9AA", "setting_id": "BASsUdyvElEVJ9AA",
"name": "Afinia Value PLA@HS", "name": "Afinia Value PLA@HS",
"from": "system", "from": "system",

View File

@@ -1,6 +1,6 @@
{ {
"name": "Anker", "name": "Anker",
"version": "02.04.00.01", "version": "02.04.00.02",
"force_update": "0", "force_update": "0",
"description": "Anker configurations", "description": "Anker configurations",
"machine_model_list": [ "machine_model_list": [
@@ -161,172 +161,172 @@
"sub_path": "filament/fdm_filament_tpu.json" "sub_path": "filament/fdm_filament_tpu.json"
}, },
{ {
"name": "Anker Generic ABS @base", "name": "Generic ABS @Anker base",
"sub_path": "filament/Anker Generic ABS @base.json" "sub_path": "filament/Generic ABS @Anker base.json"
}, },
{ {
"name": "Anker Generic ASA @base", "name": "Generic ASA @Anker base",
"sub_path": "filament/Anker Generic ASA @base.json" "sub_path": "filament/Generic ASA @Anker base.json"
}, },
{ {
"name": "Anker Generic PA @base", "name": "Generic PA @Anker base",
"sub_path": "filament/Anker Generic PA @base.json" "sub_path": "filament/Generic PA @Anker base.json"
}, },
{ {
"name": "Anker Generic PA-CF @base", "name": "Generic PA-CF @Anker base",
"sub_path": "filament/Anker Generic PA-CF @base.json" "sub_path": "filament/Generic PA-CF @Anker base.json"
}, },
{ {
"name": "Anker Generic PC @base", "name": "Generic PC @Anker base",
"sub_path": "filament/Anker Generic PC @base.json" "sub_path": "filament/Generic PC @Anker base.json"
}, },
{ {
"name": "Anker Generic PETG @base", "name": "Generic PETG @Anker base",
"sub_path": "filament/Anker Generic PETG @base.json" "sub_path": "filament/Generic PETG @Anker base.json"
}, },
{ {
"name": "Anker Generic PETG-CF @base", "name": "Generic PETG-CF @Anker base",
"sub_path": "filament/Anker Generic PETG-CF @base.json" "sub_path": "filament/Generic PETG-CF @Anker base.json"
}, },
{ {
"name": "Anker Generic PLA @base", "name": "Generic PLA @Anker base",
"sub_path": "filament/Anker Generic PLA @base.json" "sub_path": "filament/Generic PLA @Anker base.json"
}, },
{ {
"name": "Anker Generic PLA Silk @base", "name": "Generic PLA Silk @Anker base",
"sub_path": "filament/Anker Generic PLA Silk @base.json" "sub_path": "filament/Generic PLA Silk @Anker base.json"
}, },
{ {
"name": "Anker Generic PLA+ @base", "name": "Generic PLA+ @Anker base",
"sub_path": "filament/Anker Generic PLA+ @base.json" "sub_path": "filament/Generic PLA+ @Anker base.json"
}, },
{ {
"name": "Anker Generic PLA-CF @base", "name": "Generic PLA-CF @Anker base",
"sub_path": "filament/Anker Generic PLA-CF @base.json" "sub_path": "filament/Generic PLA-CF @Anker base.json"
}, },
{ {
"name": "Anker Generic PVA @base", "name": "Generic PVA @Anker base",
"sub_path": "filament/Anker Generic PVA @base.json" "sub_path": "filament/Generic PVA @Anker base.json"
}, },
{ {
"name": "Anker Generic TPU @base", "name": "Generic TPU @Anker base",
"sub_path": "filament/Anker Generic TPU @base.json" "sub_path": "filament/Generic TPU @Anker base.json"
}, },
{ {
"name": "Anker Generic ABS", "name": "Generic ABS @Anker",
"sub_path": "filament/Anker Generic ABS.json" "sub_path": "filament/Generic ABS @Anker.json"
}, },
{ {
"name": "Anker Generic ABS 0.2 nozzle", "name": "Generic ABS @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic ABS 0.2 nozzle.json" "sub_path": "filament/Generic ABS @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic ABS 0.25 nozzle", "name": "Generic ABS @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic ABS 0.25 nozzle.json" "sub_path": "filament/Generic ABS @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic ASA", "name": "Generic ASA @Anker",
"sub_path": "filament/Anker Generic ASA.json" "sub_path": "filament/Generic ASA @Anker.json"
}, },
{ {
"name": "Anker Generic ASA 0.2 nozzle", "name": "Generic ASA @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic ASA 0.2 nozzle.json" "sub_path": "filament/Generic ASA @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic ASA 0.25 nozzle", "name": "Generic ASA @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic ASA 0.25 nozzle.json" "sub_path": "filament/Generic ASA @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PA", "name": "Generic PA @Anker",
"sub_path": "filament/Anker Generic PA.json" "sub_path": "filament/Generic PA @Anker.json"
}, },
{ {
"name": "Anker Generic PA 0.2 nozzle", "name": "Generic PA @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic PA 0.2 nozzle.json" "sub_path": "filament/Generic PA @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic PA 0.25 nozzle", "name": "Generic PA @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic PA 0.25 nozzle.json" "sub_path": "filament/Generic PA @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PA-CF", "name": "Generic PA-CF @Anker",
"sub_path": "filament/Anker Generic PA-CF.json" "sub_path": "filament/Generic PA-CF @Anker.json"
}, },
{ {
"name": "Anker Generic PC", "name": "Generic PC @Anker",
"sub_path": "filament/Anker Generic PC.json" "sub_path": "filament/Generic PC @Anker.json"
}, },
{ {
"name": "Anker Generic PC 0.2 nozzle", "name": "Generic PC @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic PC 0.2 nozzle.json" "sub_path": "filament/Generic PC @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic PC 0.25 nozzle", "name": "Generic PC @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic PC 0.25 nozzle.json" "sub_path": "filament/Generic PC @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PETG", "name": "Generic PETG @Anker",
"sub_path": "filament/Anker Generic PETG.json" "sub_path": "filament/Generic PETG @Anker.json"
}, },
{ {
"name": "Anker Generic PETG 0.2 nozzle", "name": "Generic PETG @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic PETG 0.2 nozzle.json" "sub_path": "filament/Generic PETG @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic PETG 0.25 nozzle", "name": "Generic PETG @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic PETG 0.25 nozzle.json" "sub_path": "filament/Generic PETG @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PETG-CF", "name": "Generic PETG-CF @Anker",
"sub_path": "filament/Anker Generic PETG-CF.json" "sub_path": "filament/Generic PETG-CF @Anker.json"
}, },
{ {
"name": "Anker Generic PLA", "name": "Generic PLA @Anker",
"sub_path": "filament/Anker Generic PLA.json" "sub_path": "filament/Generic PLA @Anker.json"
}, },
{ {
"name": "Anker Generic PLA 0.2 nozzle", "name": "Generic PLA @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic PLA 0.2 nozzle.json" "sub_path": "filament/Generic PLA @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic PLA 0.25 nozzle", "name": "Generic PLA @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic PLA 0.25 nozzle.json" "sub_path": "filament/Generic PLA @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PLA Silk", "name": "Generic PLA Silk @Anker",
"sub_path": "filament/Anker Generic PLA Silk.json" "sub_path": "filament/Generic PLA Silk @Anker.json"
}, },
{ {
"name": "Anker Generic PLA Silk 0.2 nozzle", "name": "Generic PLA Silk @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic PLA Silk 0.2 nozzle.json" "sub_path": "filament/Generic PLA Silk @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic PLA Silk 0.25 nozzle", "name": "Generic PLA Silk @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic PLA Silk 0.25 nozzle.json" "sub_path": "filament/Generic PLA Silk @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PLA+", "name": "Generic PLA+ @Anker",
"sub_path": "filament/Anker Generic PLA+.json" "sub_path": "filament/Generic PLA+ @Anker.json"
}, },
{ {
"name": "Anker Generic PLA+ 0.2 nozzle", "name": "Generic PLA+ @Anker 0.2 nozzle",
"sub_path": "filament/Anker Generic PLA+ 0.2 nozzle.json" "sub_path": "filament/Generic PLA+ @Anker 0.2 nozzle.json"
}, },
{ {
"name": "Anker Generic PLA+ 0.25 nozzle", "name": "Generic PLA+ @Anker 0.25 nozzle",
"sub_path": "filament/Anker Generic PLA+ 0.25 nozzle.json" "sub_path": "filament/Generic PLA+ @Anker 0.25 nozzle.json"
}, },
{ {
"name": "Anker Generic PLA-CF", "name": "Generic PLA-CF @Anker",
"sub_path": "filament/Anker Generic PLA-CF.json" "sub_path": "filament/Generic PLA-CF @Anker.json"
}, },
{ {
"name": "Anker Generic PVA", "name": "Generic PVA @Anker",
"sub_path": "filament/Anker Generic PVA.json" "sub_path": "filament/Generic PVA @Anker.json"
}, },
{ {
"name": "Anker Generic TPU", "name": "Generic TPU @Anker",
"sub_path": "filament/Anker Generic TPU.json" "sub_path": "filament/Generic TPU @Anker.json"
} }
], ],
"machine_list": [ "machine_list": [

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA Silk 0.2 nozzle",
"inherits": "Anker Generic PLA Silk @base",
"from": "system",
"setting_id": "A1l6NiwRrasdV556",
"instantiation": "true",
"filament_max_volumetric_speed": [
"2"
],
"compatible_printers": [
"Anker M5 0.2 nozzle",
"Anker M5 All-Metal 0.2 nozzle",
"Anker M5C 0.2 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA Silk 0.25 nozzle",
"inherits": "Anker Generic PLA Silk @base",
"from": "system",
"setting_id": "yzHmKTOtA9JamlNf",
"instantiation": "true",
"filament_max_volumetric_speed": [
"3"
],
"compatible_printers": [
"Anker M5 0.25 nozzle",
"Anker M5 All-Metal 0.25 nozzle",
"Anker M5C 0.25 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA Silk",
"inherits": "Anker Generic PLA Silk @base",
"from": "system",
"setting_id": "BGttYO9m2rGcnrEG",
"instantiation": "true",
"compatible_printers": [
"Anker M5 0.4 nozzle",
"Anker M5 0.6 nozzle",
"Anker M5 All-Metal 0.4 nozzle",
"Anker M5 All-Metal 0.6 nozzle",
"Anker M5C 0.4 nozzle",
"Anker M5C 0.6 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA+ 0.2 nozzle",
"inherits": "Anker Generic PLA+ @base",
"from": "system",
"setting_id": "6IcMSjyxt0szdUuY",
"instantiation": "true",
"filament_max_volumetric_speed": [
"2"
],
"compatible_printers": [
"Anker M5 0.2 nozzle",
"Anker M5 All-Metal 0.2 nozzle",
"Anker M5C 0.2 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA+ 0.25 nozzle",
"inherits": "Anker Generic PLA+ @base",
"from": "system",
"setting_id": "a2Rf07ZUhpTPONN1",
"instantiation": "true",
"filament_max_volumetric_speed": [
"3"
],
"compatible_printers": [
"Anker M5 0.25 nozzle",
"Anker M5 All-Metal 0.25 nozzle",
"Anker M5C 0.25 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA+",
"inherits": "Anker Generic PLA+ @base",
"from": "system",
"setting_id": "0yQN44WNvLVjQu2b",
"instantiation": "true",
"compatible_printers": [
"Anker M5 0.4 nozzle",
"Anker M5 0.6 nozzle",
"Anker M5 All-Metal 0.4 nozzle",
"Anker M5 All-Metal 0.6 nozzle",
"Anker M5C 0.4 nozzle",
"Anker M5C 0.6 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA-CF",
"inherits": "Anker Generic PLA-CF @base",
"from": "system",
"setting_id": "diNUVM7UcHLnOr9J",
"instantiation": "true",
"compatible_printers": [
"Anker M5 0.4 nozzle",
"Anker M5 0.6 nozzle",
"Anker M5 All-Metal 0.4 nozzle",
"Anker M5 All-Metal 0.6 nozzle",
"Anker M5C 0.4 nozzle",
"Anker M5C 0.6 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PLA",
"inherits": "Anker Generic PLA @base",
"from": "system",
"setting_id": "qfKC91VAAFZSExhm",
"instantiation": "true",
"compatible_printers": [
"Anker M5 0.4 nozzle",
"Anker M5 0.6 nozzle",
"Anker M5 All-Metal 0.4 nozzle",
"Anker M5 All-Metal 0.6 nozzle",
"Anker M5C 0.4 nozzle",
"Anker M5C 0.6 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic PVA",
"inherits": "Anker Generic PVA @base",
"from": "system",
"setting_id": "GRtdOKUkQfZ5eDH4",
"instantiation": "true",
"compatible_printers": [
"Anker M5 0.4 nozzle",
"Anker M5 0.6 nozzle",
"Anker M5 All-Metal 0.4 nozzle",
"Anker M5 All-Metal 0.6 nozzle",
"Anker M5C 0.4 nozzle",
"Anker M5C 0.6 nozzle"
]
}

View File

@@ -1,16 +0,0 @@
{
"type": "filament",
"name": "Anker Generic TPU",
"inherits": "Anker Generic TPU @base",
"from": "system",
"setting_id": "YyTaPGGiEyAzmh9A",
"instantiation": "true",
"compatible_printers": [
"Anker M5 0.4 nozzle",
"Anker M5 0.6 nozzle",
"Anker M5 All-Metal 0.4 nozzle",
"Anker M5 All-Metal 0.6 nozzle",
"Anker M5C 0.4 nozzle",
"Anker M5C 0.6 nozzle"
]
}

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic ABS 0.2 nozzle", "name": "Generic ABS @Anker 0.2 nozzle",
"inherits": "Anker Generic ABS @base", "inherits": "Generic ABS @Anker base",
"renamed_from": "Anker Generic ABS 0.2 nozzle",
"from": "system", "from": "system",
"setting_id": "BD5ODYVM90Ig44C5", "setting_id": "iOCt7x95XbWYMe5q",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"2" "2"

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PETG 0.25 nozzle", "name": "Generic ABS @Anker 0.25 nozzle",
"inherits": "Anker Generic PETG @base", "inherits": "Generic ABS @Anker base",
"renamed_from": "Anker Generic ABS 0.25 nozzle",
"from": "system", "from": "system",
"setting_id": "UgKfPuleh1xnoJLT", "setting_id": "7Q2pr70SpSjK7v7Y",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"3" "3"

View File

@@ -1,8 +1,8 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic ABS @base", "name": "Generic ABS @Anker base",
"inherits": "fdm_filament_abs", "inherits": "fdm_filament_abs",
"from": "system", "from": "system",
"filament_id": "GFB99", "filament_id": "OFY9muEs",
"instantiation": "false" "instantiation": "false"
} }

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic ASA", "name": "Generic ABS @Anker",
"inherits": "Anker Generic ASA @base", "inherits": "Generic ABS @Anker base",
"renamed_from": "Anker Generic ABS",
"from": "system", "from": "system",
"setting_id": "QiFoBW5WuDUJGmFZ", "setting_id": "x3IBYtgKBx6Mszzk",
"instantiation": "true", "instantiation": "true",
"compatible_printers": [ "compatible_printers": [
"Anker M5 0.4 nozzle", "Anker M5 0.4 nozzle",

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PETG 0.2 nozzle", "name": "Generic ASA @Anker 0.2 nozzle",
"inherits": "Anker Generic PETG @base", "inherits": "Generic ASA @Anker base",
"renamed_from": "Anker Generic ASA 0.2 nozzle",
"from": "system", "from": "system",
"setting_id": "VItvDP6zmenWXwPO", "setting_id": "lTR8QLbuttyVs5UW",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"2" "2"

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic ABS 0.25 nozzle", "name": "Generic ASA @Anker 0.25 nozzle",
"inherits": "Anker Generic ABS @base", "inherits": "Generic ASA @Anker base",
"renamed_from": "Anker Generic ASA 0.25 nozzle",
"from": "system", "from": "system",
"setting_id": "WS5wXckNuiQqSVwO", "setting_id": "FU4BiMydEyo7zxq5",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"3" "3"

View File

@@ -1,8 +1,8 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic ASA @base", "name": "Generic ASA @Anker base",
"inherits": "fdm_filament_asa", "inherits": "fdm_filament_asa",
"from": "system", "from": "system",
"filament_id": "GFB98", "filament_id": "OFLPAxz3",
"instantiation": "false" "instantiation": "false"
} }

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PETG-CF", "name": "Generic ASA @Anker",
"inherits": "Anker Generic PETG-CF @base", "inherits": "Generic ASA @Anker base",
"renamed_from": "Anker Generic ASA",
"from": "system", "from": "system",
"setting_id": "j8PLF6AZD0R0oVs8", "setting_id": "aDADuxiEKt2dVKOJ",
"instantiation": "true", "instantiation": "true",
"compatible_printers": [ "compatible_printers": [
"Anker M5 0.4 nozzle", "Anker M5 0.4 nozzle",

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PA 0.2 nozzle", "name": "Generic PA @Anker 0.2 nozzle",
"inherits": "Anker Generic PA @base", "inherits": "Generic PA @Anker base",
"renamed_from": "Anker Generic PA 0.2 nozzle",
"from": "system", "from": "system",
"setting_id": "NZB26MSD9WbOeY2S", "setting_id": "tYAT7xnNFD6gY84A",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"2" "2"

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PA 0.25 nozzle", "name": "Generic PA @Anker 0.25 nozzle",
"inherits": "Anker Generic PA @base", "inherits": "Generic PA @Anker base",
"renamed_from": "Anker Generic PA 0.25 nozzle",
"from": "system", "from": "system",
"setting_id": "Wj7oXTGUxo8lie1B", "setting_id": "Zlv65wLA94PbevRG",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"3" "3"

View File

@@ -1,8 +1,8 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PA @base", "name": "Generic PA @Anker base",
"inherits": "fdm_filament_pa", "inherits": "fdm_filament_pa",
"from": "system", "from": "system",
"filament_id": "GFN99", "filament_id": "OFg8ndtj",
"instantiation": "false" "instantiation": "false"
} }

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PC", "name": "Generic PA @Anker",
"inherits": "Anker Generic PC @base", "inherits": "Generic PA @Anker base",
"renamed_from": "Anker Generic PA",
"from": "system", "from": "system",
"setting_id": "xY25QcIsR9pWai3n", "setting_id": "sLWVtBxpAC53eUwo",
"instantiation": "true", "instantiation": "true",
"compatible_printers": [ "compatible_printers": [
"Anker M5 All-Metal 0.4 nozzle", "Anker M5 All-Metal 0.4 nozzle",

View File

@@ -1,9 +1,9 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PA-CF @base", "name": "Generic PA-CF @Anker base",
"inherits": "fdm_filament_pa", "inherits": "fdm_filament_pa",
"from": "system", "from": "system",
"filament_id": "GFN98", "filament_id": "OFQLcbps",
"instantiation": "false", "instantiation": "false",
"filament_type": [ "filament_type": [
"PA-CF" "PA-CF"

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PA", "name": "Generic PA-CF @Anker",
"inherits": "Anker Generic PA @base", "inherits": "Generic PA-CF @Anker base",
"renamed_from": "Anker Generic PA-CF",
"from": "system", "from": "system",
"setting_id": "QbIiX554Yee6vb32", "setting_id": "K4LcpR0zBp5klSpb",
"instantiation": "true", "instantiation": "true",
"compatible_printers": [ "compatible_printers": [
"Anker M5 All-Metal 0.4 nozzle", "Anker M5 All-Metal 0.4 nozzle",

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PC 0.2 nozzle", "name": "Generic PC @Anker 0.2 nozzle",
"inherits": "Anker Generic PC @base", "inherits": "Generic PC @Anker base",
"renamed_from": "Anker Generic PC 0.2 nozzle",
"from": "system", "from": "system",
"setting_id": "GhIOAidtgDkzh9Aj", "setting_id": "2sSOgctcnVh9bGbQ",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"2" "2"

View File

@@ -1,9 +1,10 @@
{ {
"type": "filament", "type": "filament",
"name": "Anker Generic PC 0.25 nozzle", "name": "Generic PC @Anker 0.25 nozzle",
"inherits": "Anker Generic PC @base", "inherits": "Generic PC @Anker base",
"renamed_from": "Anker Generic PC 0.25 nozzle",
"from": "system", "from": "system",
"setting_id": "TQm9EPdenyGJMvgP", "setting_id": "h7IRuq5uekjNw4vg",
"instantiation": "true", "instantiation": "true",
"filament_max_volumetric_speed": [ "filament_max_volumetric_speed": [
"3" "3"

Some files were not shown because too many files have changed in this diff Show More