Compare commits

..

42 Commits

Author SHA1 Message Date
SoftFever
8d37abae54 Merge branch 'main' into feature/automation 2026-06-09 23:34:34 +08:00
SoftFever
3546dafc18 update doc 2026-06-03 22:41:30 +08:00
SoftFever
2e4cbd4511 fix(automation): view.select 'device' falls back to m_printer_view for third-party printers 2026-06-03 21:45:44 +08:00
SoftFever
411787afb2 docs(automation): add view.select client wrapper, example usage, and docs 2026-06-03 21:37:51 +08:00
SoftFever
00bb52bcd7 fix(automation): select_tab_by_name resolves prepare/preview by page window (viewer-mode safe) 2026-06-03 21:36:03 +08:00
SoftFever
1a960b59ea feat(automation): implement view.select via MainFrame::select_tab_by_name 2026-06-03 21:26:40 +08:00
SoftFever
9a16fb7c2e feat(automation): add view.select dispatcher handler + tests 2026-06-03 21:18:50 +08:00
SoftFever
7ef89fdb9d docs(automation): document file.open method and error 1007 2026-06-03 20:22:17 +08:00
SoftFever
3d813d529e docs(automation): example_slice.py loads model at runtime via file.open 2026-06-03 20:20:25 +08:00
SoftFever
151927ac00 feat(automation): add OrcaClient.open() wrapper for file.open 2026-06-03 20:18:31 +08:00
SoftFever
3f1a2a71bd feat(automation): implement WxUiBackend::open_files via Plater::load_files 2026-06-03 20:14:29 +08:00
SoftFever
b87dd23c74 feat(automation): advertise file.open in automation.version capabilities 2026-06-03 20:06:44 +08:00
SoftFever
cea46ddc7f feat(automation): add file.open dispatcher handler with validation + tests 2026-06-03 20:01:23 +08:00
SoftFever
b3d7a732c5 feat(automation): add open_files to backend interface + kErrLoadFailed (1007) 2026-06-03 19:55:46 +08:00
SoftFever
b70be9178e docs(automation): design spec for file.open runtime model-loading method
Adds the approved design for a `file.open` JSON-RPC method that loads
files into a running OrcaSlicer via Plater::load_files (synchronous, GUI
thread). Dialog-driving approaches deferred.
2026-06-03 18:57:20 +08:00
SoftFever
892b33bac5 refactor(automation): drop screenshot.viewport3d, keep only screenshot.window
The on-screen window capture is composited from the desktop framebuffer, so it
already includes the GL 3D viewport as currently shown (model in the editor,
toolpaths in Preview). The offscreen render_thumbnail path only ever drew the
model GLVolumeCollection — never the gcode toolpaths — and produced a blank image
after slicing because the app switches to the Preview panel. Rather than maintain a
second, more limited capture method, remove it entirely.

Removes the JSON-RPC method, IUiBackend/WxUiBackend implementation, dispatcher
route + capability entry, the now-dead opt_int/thumbnail_to_wximage helpers and
ThumbnailData include, the mock override + unit test, and the Python
screenshot_3d client method. Docs updated accordingly.
2026-06-03 18:05:23 +08:00
SoftFever
952696fd1f fix(automation): capture screenshot.window from the composited screen
Blitting from the MainFrame's own wxClientDC clips out child HWNDs, so all of
OrcaSlicer's custom child-window controls (sidebar buttons/combos/panels) and the
GL canvas came back as uninitialized black bitmap memory. Read the window's
on-screen rectangle from the DWM-composited desktop via wxScreenDC instead, which
includes every child window, the OpenGL surface, and ImGui overlays.

Document the visible/unobscured requirement and the HiDPI logical-vs-physical
pixel caveat; clarify how screenshot.viewport3d differs and why it stays.
2026-06-03 17:19:36 +08:00
SoftFever
6980d9c327 plan 2026-06-03 09:50:34 +08:00
SoftFever
45e93951c1 test(automation): regression verification — unit suites green + disabled-path no-op audit 2026-06-03 04:26:25 +08:00
SoftFever
a4cedde163 docs(automation): protocol reference, ids, and platform caveats 2026-06-03 04:19:20 +08:00
SoftFever
61b4131aee feat(automation): runnable e2e slice example / smoke test 2026-06-03 04:14:24 +08:00
SoftFever
6eb479243d feat(automation): instrument core widgets with stable automation ids 2026-06-03 04:09:42 +08:00
SoftFever
622272e674 feat(automation): GUI_App owns automation server lifecycle (opt-in) 2026-06-03 03:58:01 +08:00
SoftFever
b54cc75362 feat(automation): --automation-server CLI flag plumbed into GUI 2026-06-03 03:48:47 +08:00
SoftFever
9d915c4e76 feat(automation): WxUiBackend input + window/viewport screenshots 2026-06-03 03:35:40 +08:00
SoftFever
d742b10c50 feat(automation): WxUiBackend marshaller + dump_tree + app_state 2026-06-03 03:19:29 +08:00
SoftFever
47467b626c feat(automation): guarded ImGui item/window recording hooks 2026-06-03 03:01:58 +08:00
SoftFever
c0d37bff3a feat(automation): double-buffered ImGui item table 2026-06-03 02:52:52 +08:00
SoftFever
39a29cf865 feat(automation): wxWindow automation-id registry 2026-06-03 02:43:41 +08:00
SoftFever
487e1cb205 feat(automation): localhost beast POST /jsonrpc server 2026-06-03 02:32:51 +08:00
SoftFever
a2e8a90052 feat(automation): Python reference client 2026-06-03 02:23:10 +08:00
SoftFever
8dcbc582fa feat(automation): sync.wait_for poll loop 2026-06-03 02:13:35 +08:00
SoftFever
b0325c999a feat(automation): app.state + screenshot handlers with base64 2026-06-03 02:07:30 +08:00
SoftFever
5a2f03adee feat(automation): input.click / input.type / input.key handlers 2026-06-03 02:01:40 +08:00
SoftFever
a8ed2b8dd5 feat(automation): tree.dump / tree.find / widget.get handlers 2026-06-03 01:55:48 +08:00
SoftFever
aac14ae161 feat(automation): JSON-RPC dispatcher envelope + version + error model 2026-06-03 01:49:49 +08:00
SoftFever
94c356845e test(automation): MockUiBackend recording test double 2026-06-03 01:45:46 +08:00
SoftFever
e449a0b618 feat(automation): resolve_unique + wait-state evaluation 2026-06-03 01:42:38 +08:00
SoftFever
ddd1967bff feat(automation): pure locator (id/path/predicate) with unit tests 2026-06-03 01:38:13 +08:00
SoftFever
02140d2a1e test(automation): lock serializer children/value/imgui/app_state shapes 2026-06-03 01:34:13 +08:00
SoftFever
0be138b981 feat(automation): pure UI node model + JSON serializer with unit test 2026-06-03 01:28:43 +08:00
SoftFever
11301086a7 docs: add UI automation design spec
Design for an opt-in localhost JSON-RPC server that lets an external script/AI agent drive and observe the OrcaSlicer GUI (wxWidgets + 3D viewport + ImGui) via wxUIActionSimulator.
2026-06-03 00:48:27 +08:00
213 changed files with 9571 additions and 11925 deletions

View File

@@ -14,8 +14,6 @@ on:
- 'resources/**'
- ".github/workflows/build_*.yml"
- 'scripts/flatpak/**'
- 'scripts/msix/**'
- 'tests/**'
pull_request:
branches:
@@ -32,8 +30,6 @@ on:
- 'build_release_vs2022.bat'
- 'build_release_macos.sh'
- 'scripts/flatpak/**'
- 'scripts/msix/**'
- 'tests/**'
schedule:

View File

@@ -117,15 +117,6 @@ jobs:
run: |
./build_release_macos.sh -s -n -x ${{ !vars.SELF_HOSTED && '-1' || '' }} -a ${{ inputs.arch }} -t 10.15
- name: Generate system presets cache (macOS)
if: runner.os == 'macOS' && !inputs.macos-combine-only
working-directory: ${{ github.workspace }}
shell: bash
run: |
tool=$(find build/${{ inputs.arch }} -name generate_system_cache -type f | head -1)
profiles=$(find build/${{ inputs.arch }} -path "*/Resources/profiles" -type d | head -1)
"$tool" --path "$profiles" --log_level 2
- name: Pack macOS app bundle ${{ inputs.arch }}
if: runner.os == 'macOS' && !inputs.macos-combine-only
working-directory: ${{ github.workspace }}
@@ -301,22 +292,6 @@ jobs:
# WindowsSDKVersion: '10.0.26100.0\'
run: .\build_release_vs.bat slicer
- name: Generate system presets cache (Windows)
if: runner.os == 'Windows'
shell: pwsh
run: |
$tool = Get-ChildItem -Recurse -Path build -Filter "generate_system_cache.exe" | Select-Object -First 1
if (-not $tool) { Write-Error "generate_system_cache.exe not found in build tree"; exit 1 }
$profiles = Get-ChildItem -Recurse -Path build -Directory -Filter profiles |
Where-Object { $_.FullName -match 'resources' } | Select-Object -First 1
if (-not $profiles) { Write-Error "profiles directory not found in build tree"; exit 1 }
# Add the slicer's runtime DLL directory to PATH so generate_system_cache.exe
# can resolve its dependencies (TKernel.dll etc.) without a full install step.
$dll_dir = Get-ChildItem -Recurse -Path build -Filter "TKernel.dll" |
Select-Object -First 1 | Select-Object -ExpandProperty DirectoryName
if ($dll_dir) { $env:PATH = "$dll_dir;$env:PATH" }
& $tool.FullName --path $profiles.FullName --log_level 2
- name: Create installer Win
if: runner.os == 'Windows' && !vars.SELF_HOSTED
working-directory: ${{ github.workspace }}/build
@@ -396,25 +371,6 @@ jobs:
asset_content_type: application/x-msdownload
max_releases: 1
- name: Build MSIX Store package Win
if: runner.os == 'Windows' && !vars.SELF_HOSTED
working-directory: ${{ github.workspace }}
shell: pwsh
run: |
./scripts/msix/build_msix.ps1 `
-InstallDir "${{ github.workspace }}/build/OrcaSlicer" `
-OutputPath "${{ github.workspace }}/build/OrcaSlicer_Windows_MSIX_${{ env.ver }}.msix" `
-IdentityName "${{ vars.ORCA_MSIX_IDENTITY_NAME || 'OrcaSlicer.OrcaSlicer' }}" `
-Publisher "${{ vars.ORCA_MSIX_PUBLISHER || 'CN=38F7EA55-C73B-4072-B3B2-C8E0EA15BB82' }}" `
-PublisherDisplayName "${{ vars.ORCA_MSIX_PUBLISHER_DISPLAY_NAME || 'OrcaSlicer' }}"
- name: Upload artifacts Win MSIX
if: runner.os == 'Windows' && !vars.SELF_HOSTED
uses: actions/upload-artifact@v7
with:
name: OrcaSlicer_Windows_MSIX_${{ env.ver }}
path: ${{ github.workspace }}/build/OrcaSlicer_Windows_MSIX_${{ env.ver }}.msix
# Ubuntu
- name: Apt-Install Dependencies
if: runner.os == 'Linux' && !vars.SELF_HOSTED
@@ -444,22 +400,6 @@ jobs:
retention-days: 5
if-no-files-found: error
- name: Generate system presets cache (Linux)
if: runner.os == 'Linux'
shell: bash
run: |
tool=$(find build -name generate_system_cache -type f | head -1)
if [ -z "$tool" ]; then echo "ERROR: generate_system_cache not found in build tree" >&2; exit 1; fi
"$tool" --path build/package/resources/profiles --log_level 2
# Re-pack the AppImage so the per-vendor caches are included
appimage=$(find build -maxdepth 1 -name "OrcaSlicer_Linux_AppImage*.AppImage" | head -1)
chmod +x "$appimage"
"$appimage" --appimage-extract
cp build/package/resources/profiles/*.cache squashfs-root/resources/profiles/
appimagetool=$(find build -name "appimagetool.AppImage" | head -1)
ARCH=$(uname -m) "$appimagetool" --appimage-extract-and-run squashfs-root "$appimage"
rm -rf squashfs-root
- name: Run external slicer regression tests
if: runner.os == 'Linux'
timeout-minutes: 20

View File

@@ -73,9 +73,8 @@ jobs:
- name: Download release artifacts from build run
run: |
# Windows_V* (not Windows_*) keeps the MSIX Store artifact out: it goes to Partner Center, not GitHub releases.
gh run download "$RUN_ID" --repo "$GITHUB_REPOSITORY" --dir artifacts \
-p 'OrcaSlicer_Windows_V*' \
-p 'OrcaSlicer_Windows_*' \
-p 'OrcaSlicer_Mac_universal_*' \
-p 'OrcaSlicer_Linux_ubuntu_*' \
-p 'OrcaSlicer-Linux-flatpak_*' \

3
.gitignore vendored
View File

@@ -45,4 +45,5 @@ test.js
.clangd
internal_docs/
*.flatpak
/flatpak-repo/
/flatpak-repo/
*.pyc

View File

@@ -504,24 +504,13 @@ if [[ -n "${USE_LLD}" ]] ; then
fi
fi
# Auto-detect ccache for faster rebuilds
export CMAKE_CCACHE_ARGS=()
CMAKE_CCACHE=${CMAKE_CCACHE:-}
if [ -n "$CMAKE_CCACHE" ]; then
echo "Checking ${CMAKE_CCACHE} environment variable for compiler cache program..."
CMAKE_CCACHE=$(command -v "${CMAKE_CCACHE}") || {
echo "CMAKE_CCACHE environment variable is set to '${CMAKE_CCACHE}' but it was not found in PATH."
CMAKE_CCACHE=""
}
elif command -v sccache >/dev/null 2>&1 ; then
CMAKE_CCACHE=$(command -v sccache)
elif command -v ccache >/dev/null 2>&1 ; then
CMAKE_CCACHE=$(command -v ccache)
fi
if [ -n "${CMAKE_CCACHE}" ] ; then
echo "${CMAKE_CCACHE} found, enabling compiler caching..."
export CMAKE_CCACHE_ARGS=(-DCMAKE_C_COMPILER_LAUNCHER="${CMAKE_CCACHE}" -DCMAKE_CXX_COMPILER_LAUNCHER="${CMAKE_CCACHE}")
if command -v ccache >/dev/null 2>&1 ; then
echo "ccache found at $(command -v ccache), enabling compiler caching..."
export CMAKE_CCACHE_ARGS=(-DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache)
else
echo "Note: ccache or sccache are not found. Install either of them for faster rebuilds."
echo "Note: ccache not found. Install ccache for faster rebuilds."
fi
if [[ -n "${BUILD_DEPS}" ]] ; then
@@ -536,7 +525,7 @@ if [[ -n "${BUILD_DEPS}" ]] ; then
BUILD_ARGS+=(-DCMAKE_BUILD_TYPE="${BUILD_CONFIG}")
fi
print_and_run cmake -S deps -B deps/$BUILD_DIR "${CMAKE_C_CXX_COMPILER_CLANG[@]}" "${CMAKE_LLD_LINKER_ARGS[@]}" "${CMAKE_CCACHE_ARGS[@]}" -G Ninja "${COLORED_OUTPUT}" "${BUILD_ARGS[@]}"
print_and_run cmake -S deps -B deps/$BUILD_DIR "${CMAKE_C_CXX_COMPILER_CLANG[@]}" "${CMAKE_LLD_LINKER_ARGS[@]}" -G Ninja "${COLORED_OUTPUT}" "${BUILD_ARGS[@]}"
print_and_run cmake --build deps/$BUILD_DIR -j1
fi
@@ -567,8 +556,6 @@ if [[ -n "${BUILD_ORCA}" ]] || [[ -n "${BUILD_TESTS}" ]] ; then
print_and_run cmake --build $BUILD_DIR --config "${BUILD_CONFIG}" --target OrcaSlicer
echo "Building OrcaSlicer_profile_validator .."
print_and_run cmake --build $BUILD_DIR --config "${BUILD_CONFIG}" --target OrcaSlicer_profile_validator
echo "Building generate_system_cache ..."
print_and_run cmake --build $BUILD_DIR --config "${BUILD_CONFIG}" --target generate_system_cache
./scripts/run_gettext.sh
fi
if [[ -n "${BUILD_TESTS}" ]] ; then

4
deps/CMakeLists.txt vendored
View File

@@ -196,8 +196,6 @@ if (NOT IS_CROSS_COMPILE OR NOT APPLE)
-DCMAKE_DEBUG_POSTFIX:STRING=d
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
-DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
-DCMAKE_TOOLCHAIN_FILE:STRING=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_EXE_LINKER_FLAGS:STRING=${CMAKE_EXE_LINKER_FLAGS}
-DCMAKE_SHARED_LINKER_FLAGS:STRING=${CMAKE_SHARED_LINKER_FLAGS}
@@ -243,8 +241,6 @@ else()
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}
-DCMAKE_IGNORE_PREFIX_PATH:STRING=${CMAKE_IGNORE_PREFIX_PATH}
-DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER}
-DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER}
-DBUILD_SHARED_LIBS:BOOL=OFF
${_cmake_osx_arch}
"${_configs_line}"

668
doc/automation.md Normal file
View File

@@ -0,0 +1,668 @@
# OrcaSlicer UI Automation Protocol (v1.0.0)
OrcaSlicer ships an **opt-in, localhost-only JSON-RPC server** that lets external
scripts introspect, drive, and screenshot the running OrcaSlicer GUI. It is built
for end-to-end testing and automation: a script can enumerate the live widget
tree, click buttons, type text, send keyboard shortcuts, wait for UI state, query
high-level application state, load models/projects into the running instance,
switch the active view/tab, and capture window images (the on-screen capture
includes the 3D viewport).
This document is the protocol reference. It describes activation, the transport,
the JSON-RPC envelope, every method, the unified node shape, the target/locator
model, error codes, the set of instrumented automation ids, ImGui specifics,
platform caveats, a quick-start snippet, and planned future work.
---
## 1. Overview & activation
The automation server is **OFF by default**. It is enabled with two
command-line flags:
| Flag | Meaning |
|---|---|
| `--automation-server` | Enable the automation server. |
| `--automation-server-port=PORT` | Override the listening port. Optional; default is **13619**. |
Example:
```bash
OrcaSlicer --automation-server --automation-server-port=13619 model.stl
```
The server binds to **`127.0.0.1` only** (the loopback interface). It is never
exposed on an external network interface.
**Security note (v1):** there is **no authentication token** in v1. The localhost
bind is the *only* security boundary. Any process able to run code on the machine
can connect to the port and drive the GUI — including injecting mouse and keyboard
input — while the server is enabled. The feature is intended for testing and
automation environments, not for production or shared/multi-user machines.
When the server is enabled, OrcaSlicer emits a `warning`-level log line at startup
to make the active input-injection surface obvious in logs, for example:
```
UI automation server ENABLED ... input injection is active
```
---
## 2. Transport
The server speaks **HTTP/1.1** over the loopback TCP socket:
| Request | Response |
|---|---|
| `POST /jsonrpc` with a JSON-RPC 2.0 request body | A JSON-RPC 2.0 response with `Content-Type: application/json`. |
| `GET /` | A plain-text health page: `OrcaSlicer automation server v1.0.0` (`Content-Type: text/plain`). |
| Anything else | HTTP `404 Not Found`. |
The server is **single-client / serialized** in v1: it handles one request at a
time on its own dedicated I/O thread. Connections are not kept alive; each request
is answered and the socket is closed. Clients should issue requests sequentially.
---
## 3. JSON-RPC envelope
The protocol follows **JSON-RPC 2.0**.
**Request:**
```json
{ "jsonrpc": "2.0", "id": <id>, "method": "<method>", "params": { ... } }
```
- `params` may be omitted; the server treats a missing `params` as an empty object.
**Success response:**
```json
{ "jsonrpc": "2.0", "id": <id>, "result": { ... } }
```
**Error response:**
```json
{ "jsonrpc": "2.0", "id": <id>, "error": { "code": <int>, "message": "<string>" } }
```
The request `id` is echoed back in the response. When the request has no `id`, or
when the request body cannot be parsed as JSON, the response `id` is `null`.
---
## 4. Methods
There are 12 methods. Capabilities advertised by `automation.version` list the 11
callable feature methods (every method except `automation.version` itself).
### `automation.version`
Returns server identity and the list of supported methods. Takes no parameters.
**Result:**
```json
{
"version": "1.0.0",
"protocol": "2.0",
"capabilities": [
"tree.dump", "tree.find", "widget.get", "input.click", "input.type",
"input.key", "sync.wait_for", "app.state", "screenshot.window", "file.open",
"view.select"
]
}
```
### `tree.dump`
Snapshot the live UI tree as a single root node with nested children.
**Params (all optional):**
| Param | Type | Default | Meaning |
|---|---|---|---|
| `root` | string (id or path) | full tree | Root the dump at the node with this id/path. |
| `max_depth` | int | `-1` | Maximum depth to descend. `-1` = unlimited. |
| `visible_only` | bool | `false` | When true, omit non-visible nodes. |
| `include_imgui` | bool | `true` | When true, include ImGui items. |
**Result:** the serialized root [node](#5-unified-node-shape), with `children`
included.
### `tree.find`
Find all nodes matching a [target predicate](#6-target--locator).
**Params:** a target predicate — any combination of `name`, `class`, `label`,
`value`, `backend` (provided fields are ANDed). The params object is the target
itself (it is *not* wrapped in a `target` key for this method).
**Result:** a **flat JSON array** of matching nodes. The nodes in this array are
returned **without** their `children` (use `widget.get`/`tree.dump` to descend).
### `widget.get`
Fetch a single node by [target](#6-target--locator).
**Params:**
| Param | Type | Required | Meaning |
|---|---|---|---|
| `target` | object | yes | Target spec (id / path / predicate). |
**Result:** a single [node](#5-unified-node-shape), with its `children` included.
**Errors:** `1001` if the target is **not found** *or* **ambiguous** (more than one
match).
### `input.click`
Click a resolved, actionable node.
**Params:**
| Param | Type | Default | Meaning |
|---|---|---|---|
| `target` | object | required | Target spec; must resolve to exactly one node. |
| `button` | string | `"left"` | `"left"`, `"right"`, or `"middle"`. |
| `double` | bool | `false` | Double-click when true. |
| `modifiers` | array of string | `[]` | Held modifiers: any of `"ctrl"`, `"shift"`, `"alt"`, `"cmd"` (`"meta"` is accepted as an alias of `"cmd"`). |
**Result:** `{ "ok": true }`.
**Errors:** `1001` not found / ambiguous; `1002` if the target is disabled or
hidden (not actionable). The click path raises and focuses the target's top-level
window before injecting the click.
### `input.type`
Type text into the currently focused control.
**Params:**
| Param | Type | Required | Meaning |
|---|---|---|---|
| `text` | string | yes | The text to type. |
| `target` | object | no | If given, this node is clicked first (to focus it) before typing. |
**Result:** `{ "ok": true }`.
**Errors:** if `target` is supplied, the same actionability errors as
`input.click` apply (`1001` / `1002`).
### `input.key`
Send a key chord (a key plus optional modifiers) to the focused window.
**Params:**
| Param | Type | Required | Meaning |
|---|---|---|---|
| `keys` | string or array | yes | Either a `"+"`-joined string like `"ctrl+s"`, or an array like `["ctrl", "s"]`. The last token is the key; earlier tokens are modifiers. |
**Result:** `{ "ok": true }`.
**Key names must be lowercase.** Recognized key names include `"enter"`, `"tab"`,
`"esc"`, `"space"`, `"delete"`, `"backspace"`, `"f5"` (and other function keys),
and single characters (e.g. `"s"`, `"a"`). Recognized modifiers are `"ctrl"`,
`"shift"`, `"alt"`, `"cmd"` (with `"meta"` as an alias for `"cmd"`).
**Unrecognized or uppercase key names are silently ignored** — no error is
returned, the key simply does not fire. Use lowercase names exclusively.
### `sync.wait_for`
Poll the UI until a target node reaches a desired state, or time out. This is the
preferred way to synchronize with asynchronous UI changes (it replaces fragile
fixed sleeps). Internally it repeatedly refreshes and dumps the tree, re-resolves
the target, and evaluates the requested state until it is satisfied.
**Params:**
| Param | Type | Default | Meaning |
|---|---|---|---|
| `target` | object | required | Target spec. |
| `state` | string | required | One of `"exists"`, `"visible"`, `"enabled"`, `"value"`. |
| `value` | string | — | Required when `state` is `"value"`; the expected value to match. |
| `timeout_ms` | int | `5000` | Maximum time to wait, in milliseconds. |
| `poll_ms` | int | `100` | Poll interval, in milliseconds (minimum 1). |
State semantics:
- `exists` — the target resolves to a node.
- `visible` — the node exists and is visible.
- `enabled` — the node exists and is **both enabled and visible**.
- `value` — the node has a value and that value equals the supplied `value`.
**Result:** `{ "ok": true, "elapsed_ms": <int> }`.
**Errors:** `1003` on timeout (the state was not reached within `timeout_ms`).
### `app.state`
Return a high-level application-state snapshot. Takes no parameters.
**Result:**
```json
{
"active_tab": "<string>",
"project_loaded": <bool>,
"slicing": <bool>,
"slice_progress": <int>,
"foreground": <bool>,
"modal_dialog": "<string>"
}
```
| Field | Meaning |
|---|---|
| `active_tab` | The active top-level tab/page. |
| `project_loaded` | Whether a project/model is currently loaded. |
| `slicing` | Whether slicing is currently in progress. |
| `slice_progress` | Slicing progress (`-1` when unknown). |
| `foreground` | Whether the main window is in the foreground. |
| `modal_dialog` | Present only when a modal dialog is active; identifies it. Omitted otherwise. |
### `screenshot.window`
Capture a window as a PNG, exactly as it appears on screen.
**Params:**
| Param | Type | Default | Meaning |
|---|---|---|---|
| `target` | object | main frame | If given, capture this window; otherwise capture the main frame. |
**Result:** `{ "png_base64": "<base64 PNG>", "width": <int>, "height": <int> }`.
**Errors:** `1005` on screenshot failure; `1001` if a supplied `target` is not
found or ambiguous.
**How it works:** the window's on-screen rectangle is read back from the
DWM-composited desktop framebuffer (`wxScreenDC`), so the capture includes every
native child control, the OpenGL 3D viewport, and ImGui overlays — it is a faithful
image of what the user sees. (Capturing the parent window's own client DC instead
would clip out child HWNDs and the GL surface, leaving them black; that is why this
method reads from the screen.)
**Caveats:**
- The window must be **visible and unobscured**. Because the source is the on-screen
framebuffer, any overlapping window occludes the captured region. The backend
raises the target window before capturing.
- **HiDPI:** the reported `width`/`height` come from the window's logical client size,
while the screen framebuffer is in physical pixels. On per-monitor-DPI displays the
two can differ; the capture may be cropped or scaled relative to the logical size.
- Because the capture is the live on-screen image, the 3D content reflects the
**current view**: the model in the 3D editor, or the gcode toolpaths in Preview
after a slice. There is no separate offscreen 3D-render method — the window
capture already includes whatever the GL canvas is showing.
### `file.open`
Load one or more files into the **already-running** instance at runtime, by calling
`Plater::load_files(...)` directly on the GUI thread. This is the supported way to add
or swap a model without relaunching the process. Loading is **synchronous**: when the
call returns `ok: true`, `app.state().project_loaded` is already `true` (no polling
race).
**Params:**
| Param | Type | Required | Meaning |
|---|---|---|---|
| `paths` | string or array of strings | yes | One or more **absolute** file paths. A bare string is accepted and treated as a one-element list. Paths are read from the **host (server) filesystem** — client and server are localhost-only. |
`.3mf` files are routed as projects and meshes as models automatically, based on file
content (the same default strategy as drag-drop); there is no `as_project` flag in v1.
**Result:** `{ "ok": true, "loaded": <int> }`, where `loaded` is the number of objects
added to the scene (`load_files(...).size()`).
**Errors:**
- `-32602` (invalid params) — `paths` is missing, is not a string/array, contains a
non-string entry, or yields no non-empty path.
- `1007` (load failed) — `load_files` returned empty or threw (file not found, parse
error, or unsupported format).
- `1004` (GUI busy) — the GUI-thread marshal timed out. An extremely large model can
exceed the marshal timeout and surface here; documented, not mitigated in v1.
### `view.select`
Switch the main window to a top-level view/tab at runtime. Useful to put the UI in a
known state before other actions — e.g. switch to **Prepare** before loading a model,
or to **Preview** after slicing.
**Params:**
| Param | Type | Required | Meaning |
|---|---|---|---|
| `view` | string | yes | The target view. One of: `home`, `prepare` (3D editor), `preview` (sliced G-code), `device`, `multi_device`, `project`, `calibration`. |
**Result:** `{ "ok": true, "view": <string>, "index": <int> }`, where `index` is the
resulting tab index (it can vary with layout, since some tabs — e.g. `multi_device`
are only present in certain configurations).
**Errors:**
- `-32602` (invalid params) — `view` is missing, is not a string, or is empty.
- `1001` (not found) — the view name is unknown, or that view is not available in the
current layout (for example `prepare`/`preview` in G-code-viewer mode, or
`multi_device` when multi-device is disabled).
- `1004` (GUI busy) — the GUI-thread marshal timed out.
---
## 5. Unified node shape
Both wx widgets and ImGui items are reported with the same node schema:
```json
{
"backend": "wx" | "imgui",
"id": "<string>",
"path": "<string>",
"class": "<string>",
"label": "<string>",
"rect": { "x": <int>, "y": <int>, "w": <int>, "h": <int> },
"enabled": <bool>,
"visible": <bool>,
"value": "<string>",
"children": [ <node>, ... ]
}
```
| Field | Meaning |
|---|---|
| `backend` | `"wx"` for native wxWidgets controls, `"imgui"` for immediate-mode ImGui items. |
| `id` | The automation id when one is set, otherwise a derived id. For ImGui items the `path` doubles as the `id`. |
| `path` | Positional path, e.g. `"MainFrame/Panel[2]/Button[0]"`. For ImGui items: `"ImGui/<window>/<label>"`. |
| `class` | wx class name, or the ImGui item type. |
| `label` | The control's label/caption. May include an ImGui `##`-id suffix for ImGui items. |
| `rect` | Bounding rectangle in **screen coordinates**. |
| `enabled` | Whether the control is enabled. |
| `visible` | Whether the control is visible. |
| `value` | The control's value (text/choice/check/slider, etc.). **Omitted entirely** when the control has no applicable value. |
| `children` | Child nodes. **wx only**, and present only when children are included (e.g. `tree.dump`, `widget.get`). ImGui items are flat (no children) and are listed under their window. |
Notes:
- The `value` key is **omitted** (not `null`) when the control has no value.
- `children` is present only for wx nodes when children are requested; ImGui nodes
never carry `children`.
---
## 6. Target / locator
Most methods accept a **target** object that identifies one or more nodes. A
target may specify:
| Field | Meaning |
|---|---|
| `id` | Exact automation id. |
| `path` | Exact positional path. |
| `name` | Predicate: matches either the node's `id` **or** its `label`. |
| `class` | Predicate: exact class name. |
| `label` | Predicate: exact label. |
| `value` | Predicate: node has a value and it equals this string. |
| `backend` | Predicate: `"wx"` or `"imgui"`. |
**Resolution order:** **`id``path` → predicate.**
- If `id` is present, only `id` is used (exact match).
- Else if `path` is present, only `path` is used (exact match).
- Else the predicate fields (`name`, `class`, `label`, `value`, `backend`) are
used, and all provided predicate fields are **ANDed** together.
Action methods (`input.click`, `input.type` with a target, `widget.get`, and
single-target `screenshot.window`) require a **unique** match. If the target
resolves to zero matches or more than one match, the call fails with error `1001`
(not found / ambiguous). `tree.find` is the exception: it returns *all* matches as
an array and never errors on ambiguity.
---
## 7. Error codes
Standard JSON-RPC codes:
| Code | Meaning |
|---|---|
| `-32700` | Parse error — the request body was not valid JSON. |
| `-32600` | Invalid request — missing/invalid `method`. |
| `-32601` | Method not found — unknown method name. |
| `-32602` | Invalid params — missing/invalid parameters for the method. |
Application-specific codes:
| Code | Meaning |
|---|---|
| `1001` | Widget/target not found **or** ambiguous (more than one match). |
| `1002` | Not actionable — the target is disabled or hidden. |
| `1003` | Wait timeout — `sync.wait_for` did not reach the requested state in time. |
| `1004` | GUI thread busy / timeout — a backend call could not be marshaled onto the GUI thread in time (wedged GUI). |
| `1005` | Screenshot failed. |
| `1006` | Disabled. |
| `1007` | Load failed — `file.open`'s `load_files` returned empty or threw (not found, parse error, unsupported format). |
---
## 8. Automation-id naming conventions & instrumented ids
Stable automation ids follow these prefix conventions:
| Prefix | Used for |
|---|---|
| `btn_` | Buttons |
| `combo_` | Preset combo boxes |
| `tab_` | Tabs |
| `canvas_` | Canvases |
| `dlg_` | Dialog buttons |
### Instrumented ids (as-built in v1)
The following controls currently carry stable automation ids:
| id | Control | Note |
|---|---|---|
| `btn_slice` | Slice-plate button | |
| `btn_export` | Print / Export button | Multi-purpose: the action (Print plate / Export G-code / Send) depends on the current mode. |
| `tab_device` | Device / Monitor tab (`MonitorPanel`) | |
| `combo_printer` | Printer preset combo (sidebar) | |
| `combo_filament` | Filament preset combo (sidebar) | First filament row only; extra multi-material rows are not instrumented. |
| `canvas_3d` | 3D editor GL canvas | |
### Controls NOT instrumented in v1
Several controls are intentionally **not** instrumented in v1 because they have no
stable `wxWindow` target to attach an id to:
- **`combo_process`** — process settings are not a sidebar combo box in the current
OrcaSlicer layout, so there is no combo control to instrument.
- **`btn_add`** — the add/import-object control is a `GLToolbar` item rendered
*inside* the GL canvas, not a `wxWindow`.
- **`tab_prepare` / `tab_preview`** — the Prepare and Preview notebook pages are
both backed by the **same** window, and the per-tab buttons are private; there is
no distinct stable window to target.
For controls that are not instrumented, scripts should fall back to class / label /
path lookup (for wx controls) or ImGui-item lookup (for ImGui controls).
---
## 9. ImGui notes
ImGui is **immediate-mode**: an item is addressable only while it is being drawn in
the current frame. The automation backend records ImGui items each frame, and a
`refresh_ui` is forced before every read or action so that the latest frame's items
are captured.
Consequences and conventions:
- Use [`sync.wait_for`](#syncwait_for) to wait for a transient gizmo or panel item
to appear before acting on it.
- ImGui items are reported with `backend: "imgui"`, a `path` of the form
`ImGui/<window>/<label>`, and that **path doubles as the item's `id`** in v1.
- ImGui items are **flat** — they have no `children` and are listed under their
window.
- Labels may include ImGui `##`-id suffixes (the part after `##` that ImGui uses to
disambiguate identically labeled widgets).
- Raw `ImGui::` gizmos that are *not* routed through the instrumented
`ImGuiWrapper` widgets (for example some Emboss / SVG / Text gizmo controls) are
only covered at the **window level** in v1; their individual sub-items are not
enumerated.
---
## 10. Platform & display caveats
- **Input requires a focused, visible window.** OS-level input injection uses
`wxUIActionSimulator`, which requires a focused, visible window. The click path
raises and focuses the target's top-level window first.
- **Linux CI needs a display.** There must be an X display available; wrap test
runs with `xvfb-run` (for example, `xvfb-run -a python example_slice.py ...`).
- **Input is asynchronous.** Do **not** rely on fixed sleeps. Use
[`sync.wait_for`](#syncwait_for) — for example, wait for `btn_export` to become
`enabled` after slicing completes — rather than sleeping for a guessed duration.
- **`screenshot.window` reads the screen.** It captures the on-screen, DWM-composited
framebuffer, so the target window must be visible and unobscured, and the result is
in physical pixels (see HiDPI caveat under [`screenshot.window`](#screenshotwindow)).
The capture includes the GL 3D viewport as currently shown (model or toolpaths).
- **Single-client / serialized.** v1 handles one request at a time; issue requests
sequentially from a single client.
- **GUI-thread marshaling.** Every backend call is marshaled onto the GUI thread
with a timeout. A wedged or unresponsive GUI returns error `1004`.
---
## 11. Quick start
Using the reference client in `tools/automation/orca_automation.py`:
```python
from orca_automation import OrcaClient
orca = OrcaClient(port=13619)
print(orca.version()) # {'version': '1.0.0', ...}
orca.select_view("prepare") # switch to the 3D editor
orca.open(r"C:\models\part.stl") # load a model at runtime (synchronous)
orca.click({"id": "btn_slice"}) # start slicing the plate
orca.wait_for({"id": "btn_export"}, # wait until slicing finishes
state="enabled", timeout_ms=180000)
orca.select_view("preview") # switch to the sliced G-code preview
png = orca.screenshot() # on-screen capture (incl. 3D view)
with open("window.png", "wb") as f:
f.write(png)
```
For a full, runnable end-to-end example — launching OrcaSlicer with the automation
flags, loading a model, slicing, waiting for completion, and saving a window PNG —
see `tools/automation/example_slice.py`.
---
## 12. Future work
Planned enhancements beyond v1:
- **Authentication token** plus a Preferences toggle to enable/disable the server
from the GUI.
- **WebSocket push events** for real-time UI/state notifications (instead of
polling).
- **Per-item ImGui gizmo instrumentation** so individual gizmo sub-controls (Emboss
/ SVG / Text, etc.) are addressable, not just at the window level.
- **More widget ids** — the process combo, the add/import button, and the
Prepare/Preview tabs once they expose stable windows.
- An **MCP wrapper** to expose the automation surface to model-context tooling.
---
## Verification (v1)
This section records the final regression gate for the v1 feature: confirmation
that the protocol core is covered by unit tests, that the existing test suites
are unaffected, and that the **disabled path (automation OFF, the default) is a
true no-op** — zero new threads, zero socket binds, zero allocations, and zero
behavior change.
### Unit-suite results (Release, Windows / MSVC, Ninja Multi-Config)
| Suite | Result |
|---|---|
| `automation` (protocol core) | **32 / 32 passed** |
| `libslic3r` (most affected by the additive `PrintConfig.cpp` CLI options) | **99 / 99 passed** |
| `fff_print` | **14 / 14 passed** |
| `libnest2d` | **14 / 14 passed** |
| `sla_print` | **21 / 21 passed** |
| `slic3rutils` | 3 / 5 passed — 2 pre-existing `[OrcaCloudServiceAgent]` SEGFAULTs, **unrelated to automation** (see note) |
> The two `slic3rutils` failures are `Orca cloud flat/nested session resolves
> display name consistently`. They exercise `Slic3r::OrcaCloudServiceAgent`, which
> the automation branch does **not** touch (verified via `git diff --stat
> main...HEAD` — no change to `src/slic3r/Utils/OrcaCloudServiceAgent.*` or
> `tests/slic3rutils/*`). They are pre-existing and not a regression introduced by
> this feature.
### Static disabled-path audit (the core regression guarantee)
Verified by code reading that with no `--automation-server` flag:
- **Flag defaults off.** `m_automation_port` defaults to `0`
(`src/slic3r/GUI/GUI_App.hpp:249`); `is_automation_enabled()` returns
`m_automation_port > 0` (`GUI_App.hpp:386`) → `false` by default.
- **No server / thread / socket.** `post_init()` calls
`start_automation_server()` **only** when
`init_params->automation_port > 0` (`src/slic3r/GUI/GUI_App.cpp:737-740`), and
`start_automation_server()` itself early-returns when `m_automation_port <= 0`
(`GUI_App.cpp:7097`). The backend / dispatcher / beast server objects are
constructed nowhere else → no `orca_automation` thread and no localhost bind
when the flag is absent.
- **Recording hooks short-circuit.** `ImGuiWrapper::automation_record_last_item`
has as its **first statement** `if (!wxGetApp().is_automation_enabled())
return;` (`src/slic3r/GUI/ImGuiWrapper.cpp:576-577`) — a single bool check, no
`ImGuiItemRecord` allocation and no `ImGuiItemTable` access on the disabled
path. In `ImGuiWrapper::render()` the window-enumeration loop and
`swap_frame()` are fully wrapped in `if (wxGetApp().is_automation_enabled())`
(`ImGuiWrapper.cpp:599-611`); when off, `render()` is its original
`ImGui::Render()` + `render_draw_data()` plus one bool check.
- **Instrumentation is inert.** The ~7 `set_automation_id(...)` calls
(`MainFrame.cpp:1330,1389,1841,1842`; `Plater.cpp:1772,2172,5068`) only store a
pointer into a static registry and bind a `wxEVT_DESTROY` pruning handler
(`src/slic3r/GUI/Automation/AutomationRegistry.cpp:24-36`). The registry is
**read** only via `window_for_automation_id` / `automation_id_of`, which are
called solely by the backend while the server is running → harmless when off.
- **CLI options are purely additive.** `automation_server` (coBool, default
`false`) and `automation_server_port` (coInt, default `13619`) are new `add()`
entries appended after `enable_timelapse`
(`src/libslic3r/PrintConfig.cpp:10794-10805`); no existing option is changed.
`GUI_InitParams::automation_port` defaults to `0`
(`src/slic3r/GUI/GUI_Init.hpp:37`) and is set only when `--automation-server`
is supplied (`src/OrcaSlicer.cpp:1345-1348`).
**Conclusion:** with automation OFF (the default), the feature allocates nothing
and changes nothing — the only added cost on any hot path is a single boolean
comparison.
### Deferred manual runtime checks (require a display / Xvfb)
These need a live GUI and cannot be run headlessly in CI; they are the manual
acceptance steps:
1. Launch **without** `--automation-server``curl http://127.0.0.1:13619/`
fails to connect (no listener); no `orca_automation` thread exists.
2. Launch **with** `--automation-server --automation-server-port=13619`
`GET /` returns the health text; `POST /jsonrpc {"method":"automation.version"}`
returns version / protocol / capabilities; `widget.get {"target":{"id":"btn_slice"}}`
returns a node with a sensible screen rect.
3. Interactive sanity: open a gizmo / move sliders with automation OFF → no
visual or behavior change.
See `tools/automation/example_slice.py` for the runnable end-to-end path.

View File

@@ -0,0 +1,608 @@
# `file.open` Automation Method 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:** Add a `file.open` JSON-RPC automation method that loads one or more files into an already-running OrcaSlicer instance by calling `Plater::load_files(...)` synchronously on the GUI thread.
**Architecture:** Follows the existing `screenshot.window` / `app.state` method pattern. A new pure-virtual `open_files(paths)` is added to the wx-free `IUiBackend` interface; `WxUiBackend` implements it via the existing `run_on_gui(...)` GUI-thread marshal calling `Plater::load_files`; the `JsonRpcDispatcher` gains a `file.open` route, a param-parsing helper, and a new `kErrLoadFailed = 1007` error code. The unit-testable surface (dispatcher + param validation + routing) is driven against `MockUiBackend`.
**Tech Stack:** C++17, nlohmann::json, Catch2 v2 (`catch_all.hpp` / `Catch2WithMain`), wxWidgets, CMake + Ninja Multi-Config. Python 3 reference client (stdlib only).
---
## Design-spec note (resolve before coding)
The design spec's error table reads `1002 | kInvalidParams | paths missing/empty…`, but in the codebase `kInvalidParams` is the standard JSON-RPC code **`-32602`**, while `1002` is `kErrNotActionable`. The spec's **Constant column (`kInvalidParams`) is authoritative** and matches every other param-validation path in the dispatcher (e.g. `m_input_type` throws `kInvalidParams` for a bad `text`). This plan therefore validates `file.open` params with **`kInvalidParams` (-32602)**, exactly like the existing handlers, and the tests assert `== kInvalidParams`. The literal "1002" in the spec is a typo; do not emit code 1002 for param errors.
## File Structure
| File | Change | Responsibility |
|---|---|---|
| `src/slic3r/GUI/Automation/IUiBackend.hpp` | modify | Add pure-virtual `int open_files(paths)` to the backend abstraction (stays wx-free). |
| `src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp` | modify | Add `kErrLoadFailed = 1007` constant + `m_file_open` declaration. |
| `src/slic3r/GUI/Automation/JsonRpcDispatcher.cpp` | modify | Add `parse_paths` helper, `m_file_open` body, dispatch route, capabilities entry. |
| `src/slic3r/GUI/Automation/WxUiBackend.hpp` | modify | Declare `open_files` override. |
| `src/slic3r/GUI/Automation/WxUiBackend.cpp` | modify | Implement `open_files` via `run_on_gui``Plater::load_files`. |
| `tests/automation/MockUiBackend.hpp` | modify | `open_files` override: record paths + return-count + fail knob. |
| `tests/automation/test_dispatcher.cpp` | modify | Catch2 tests for routing, string/array, validation, failure, capabilities. |
| `tools/automation/orca_automation.py` | modify | `open(self, paths)` client wrapper. |
| `tools/automation/example_slice.py` | modify | Launch without a model arg, then `orca.open([model])`. |
| `doc/automation.md` | modify | Document the method, capabilities, error `1007`. |
**Build/test layout:** Ninja Multi-Config in `build/`. The unit suite target is `automation_tests`; its sources (`tests/automation/CMakeLists.txt`) compile `JsonRpcDispatcher.cpp` + `MockUiBackend` but **not** `WxUiBackend.cpp`. So dispatcher/mock changes are fully unit-testable headlessly; `WxUiBackend.cpp` is verified by the full app build only.
---
## Task 1: Extend the backend abstraction (interface + mock + error code)
Adds the `open_files` contract so tests can be written. Adding a pure virtual to `IUiBackend` forces every implementation to provide it — in the unit-test target that is only `MockUiBackend`, so this task keeps the `automation_tests` build green.
**Files:**
- Modify: `src/slic3r/GUI/Automation/IUiBackend.hpp`
- Modify: `src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp:19`
- Modify: `tests/automation/MockUiBackend.hpp`
- [ ] **Step 1: Add the error constant**
In `src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp`, after the existing `kErrDisabled` line (currently line 19), add:
```cpp
constexpr int kErrDisabled = 1006;
constexpr int kErrLoadFailed = 1007; // file.open: load_files returned empty / threw
```
- [ ] **Step 2: Add the pure-virtual `open_files` to the interface**
In `src/slic3r/GUI/Automation/IUiBackend.hpp`, inside `class IUiBackend`, immediately after the `screenshot_window` pure virtual (currently line 97), add:
```cpp
// Load one or more files (absolute paths) into the running instance on the GUI
// thread. Returns the number of objects added to the scene (load_files(...).size()).
// Throws AutomationError(kErrLoadFailed) when nothing loads. Header stays wx-free:
// the concrete LoadStrategy is chosen inside WxUiBackend, not exposed here.
virtual int open_files(const std::vector<std::string>& paths) = 0;
```
- [ ] **Step 3: Implement `open_files` in the mock with record + knobs**
In `tests/automation/MockUiBackend.hpp`: add an include for the error constant near the top (after the `IUiBackend.hpp` include on line 2):
```cpp
#include "slic3r/GUI/Automation/IUiBackend.hpp"
#include "slic3r/GUI/Automation/JsonRpcDispatcher.hpp" // kErrLoadFailed
```
Add recorded-call + canned-output members. After the `screenshot_window_count` recorded field (line 20) add:
```cpp
int screenshot_window_count = 0;
std::vector<std::vector<std::string>> opened_paths; // paths of each open_files()
```
After the `click_result` canned field (line 26) add:
```cpp
bool click_result = true;
int open_return_count = 0; // value open_files() returns
bool open_should_fail = false; // when true, open_files() throws kErrLoadFailed
```
Add the override next to the other overrides, after `screenshot_window` (lines 49-51):
```cpp
PngImage screenshot_window(const UiNode*) override {
++screenshot_window_count; return canned_png;
}
int open_files(const std::vector<std::string>& paths) override {
opened_paths.push_back(paths);
if (open_should_fail)
throw AutomationError(kErrLoadFailed, "mock load failed");
return open_return_count;
}
```
- [ ] **Step 4: Build the unit-test target to confirm it still compiles**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests`
Expected: build succeeds (the new pure virtual is satisfied by the mock; no behavior change yet).
- [ ] **Step 5: Commit**
```bash
git add src/slic3r/GUI/Automation/IUiBackend.hpp src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp tests/automation/MockUiBackend.hpp
git commit -m "feat(automation): add open_files to backend interface + kErrLoadFailed (1007)"
```
---
## Task 2: `file.open` dispatcher handler (parse, route, validate, fail)
Implements the full JSON-RPC handler against the mock: param parsing (string or array), validation, routing to `open_files`, and `kErrLoadFailed` propagation.
**Files:**
- Modify: `src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp:49` (declaration)
- Modify: `src/slic3r/GUI/Automation/JsonRpcDispatcher.cpp`
- Test: `tests/automation/test_dispatcher.cpp`
- [ ] **Step 1: Write the failing happy-path test (array of paths)**
Append to `tests/automation/test_dispatcher.cpp`:
```cpp
TEST_CASE("file.open with an array of paths routes to backend", "[automation][rpc]") {
MockUiBackend mock;
mock.open_return_count = 3;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",1},{"method","file.open"},
{"params",{{"paths", json::array({"C:/abs/a.stl","C:/abs/b.stl"})}}}});
CHECK(resp.at("result").at("ok") == true);
CHECK(resp.at("result").at("loaded") == 3);
REQUIRE(mock.opened_paths.size() == 1);
REQUIRE(mock.opened_paths[0].size() == 2);
CHECK(mock.opened_paths[0][0] == "C:/abs/a.stl");
CHECK(mock.opened_paths[0][1] == "C:/abs/b.stl");
}
```
- [ ] **Step 2: Run the test to verify it fails**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe "file.open with an array of paths routes to backend"`
Expected: FAIL — `file.open` is an unknown method, so the response carries `error.code == -32601` and has no `result` (the `resp.at("result")` access throws). (If the exe path differs on your machine, locate it with `find build -iname automation_tests.exe`.)
- [ ] **Step 3: Declare the handler**
In `src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp`, after the `m_screenshot_window` declaration (currently line 49) add:
```cpp
nlohmann::json m_screenshot_window(const nlohmann::json& params);
nlohmann::json m_file_open(const nlohmann::json& params);
```
- [ ] **Step 4: Add the `parse_paths` helper and `m_file_open` body**
In `src/slic3r/GUI/Automation/JsonRpcDispatcher.cpp`, add a `parse_paths` helper. Place it in the anonymous namespace that also holds `parse_keys` — insert it right before that namespace's closing `} // namespace` (currently line 130):
```cpp
// "paths" may be a single string ("C:/a.stl") or an array of strings. Returns the
// non-empty absolute paths; throws kInvalidParams when paths is missing, not a
// string/array, contains a non-string entry, or yields no non-empty path.
std::vector<std::string> parse_paths(const nlohmann::json& params) {
if (!params.is_object() || !params.contains("paths"))
throw AutomationError(kInvalidParams, "file.open requires 'paths'");
const auto& p = params.at("paths");
std::vector<std::string> out;
if (p.is_string()) {
out.push_back(p.get<std::string>());
} else if (p.is_array()) {
for (const auto& e : p) {
if (!e.is_string())
throw AutomationError(kInvalidParams, "'paths' entries must be strings");
out.push_back(e.get<std::string>());
}
} else {
throw AutomationError(kInvalidParams, "'paths' must be a string or array");
}
out.erase(std::remove_if(out.begin(), out.end(),
[](const std::string& s) { return s.empty(); }),
out.end());
if (out.empty())
throw AutomationError(kInvalidParams, "'paths' is empty");
return out;
}
```
(`<algorithm>` for `std::remove_if` is already included at the top of the file, line 4.)
Add the handler body next to the other handlers. After `m_screenshot_window` (currently ends line 343, just before the final `}}} // namespace`), add:
```cpp
nlohmann::json JsonRpcDispatcher::m_file_open(const nlohmann::json& params) {
const std::vector<std::string> paths = parse_paths(params);
const int loaded = m_backend.open_files(paths);
return { {"ok", true}, {"loaded", loaded} };
}
```
- [ ] **Step 5: Add the dispatch route**
In `JsonRpcDispatcher::dispatch`, after the `screenshot.window` route (currently line 195) add:
```cpp
if (method == "screenshot.window") return make_result(id, m_screenshot_window(params));
if (method == "file.open") return make_result(id, m_file_open(params));
```
- [ ] **Step 6: Run the happy-path test to verify it passes**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe "file.open with an array of paths routes to backend"`
Expected: PASS — 1 test case, all assertions passed.
- [ ] **Step 7: Add the remaining handler tests (string, validation, failure)**
Append to `tests/automation/test_dispatcher.cpp`:
```cpp
TEST_CASE("file.open accepts a bare string path", "[automation][rpc]") {
MockUiBackend mock;
mock.open_return_count = 1;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",2},{"method","file.open"},
{"params",{{"paths","C:/abs/a.stl"}}}});
CHECK(resp.at("result").at("loaded") == 1);
REQUIRE(mock.opened_paths.size() == 1);
REQUIRE(mock.opened_paths[0].size() == 1);
CHECK(mock.opened_paths[0][0] == "C:/abs/a.stl");
}
TEST_CASE("file.open with missing paths -> invalid params", "[automation][rpc]") {
MockUiBackend mock;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",3},{"method","file.open"},
{"params", json::object()}});
CHECK(resp.at("error").at("code") == kInvalidParams);
CHECK(mock.opened_paths.empty());
}
TEST_CASE("file.open with empty paths array -> invalid params", "[automation][rpc]") {
MockUiBackend mock;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",4},{"method","file.open"},
{"params",{{"paths", json::array()}}}});
CHECK(resp.at("error").at("code") == kInvalidParams);
CHECK(mock.opened_paths.empty());
}
TEST_CASE("file.open with a non-string entry -> invalid params", "[automation][rpc]") {
MockUiBackend mock;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",5},{"method","file.open"},
{"params",{{"paths", json::array({"C:/a.stl", 42})}}}});
CHECK(resp.at("error").at("code") == kInvalidParams);
CHECK(mock.opened_paths.empty());
}
TEST_CASE("file.open backend load failure -> 1007", "[automation][rpc]") {
MockUiBackend mock;
mock.open_should_fail = true;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",6},{"method","file.open"},
{"params",{{"paths","C:/abs/a.stl"}}}});
CHECK(resp.at("error").at("code") == kErrLoadFailed);
}
```
- [ ] **Step 8: Run all file.open tests to verify they pass**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe "file.open*"`
Expected: PASS — 6 test cases, all assertions passed.
- [ ] **Step 9: Commit**
```bash
git add src/slic3r/GUI/Automation/JsonRpcDispatcher.hpp src/slic3r/GUI/Automation/JsonRpcDispatcher.cpp tests/automation/test_dispatcher.cpp
git commit -m "feat(automation): add file.open dispatcher handler with validation + tests"
```
---
## Task 3: Advertise `file.open` in `automation.version` capabilities
**Files:**
- Modify: `src/slic3r/GUI/Automation/JsonRpcDispatcher.cpp:166-172`
- Test: `tests/automation/test_dispatcher.cpp`
- [ ] **Step 1: Write the failing capabilities test**
Append to `tests/automation/test_dispatcher.cpp`:
```cpp
TEST_CASE("automation.version capabilities include file.open", "[automation][rpc]") {
MockUiBackend mock;
JsonRpcDispatcher d(mock);
const json resp = d.dispatch({{"jsonrpc","2.0"},{"id",1},{"method","automation.version"}});
const auto& caps = resp.at("result").at("capabilities");
bool found = false;
for (const auto& c : caps) if (c == "file.open") found = true;
CHECK(found);
}
```
- [ ] **Step 2: Run the test to verify it fails**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe "automation.version capabilities include file.open"`
Expected: FAIL — `CHECK(found)` is false; `file.open` is not yet in the capabilities array.
- [ ] **Step 3: Add `file.open` to the capabilities array**
In `JsonRpcDispatcher::m_version` (currently lines 166-172), add `"file.open"` to the array:
```cpp
nlohmann::json JsonRpcDispatcher::m_version(const nlohmann::json&) {
return { {"version", kAutomationVersion},
{"protocol", "2.0"},
{"capabilities", nlohmann::json::array({
"tree.dump","tree.find","widget.get","input.click","input.type",
"input.key","sync.wait_for","app.state","screenshot.window",
"file.open" })} };
}
```
- [ ] **Step 4: Run the test to verify it passes**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe "automation.version capabilities include file.open"`
Expected: PASS.
- [ ] **Step 5: Run the whole automation suite to confirm no regressions**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe --order rand --warn NoAssertions`
Expected: PASS — all cases green (the pre-existing ~32 plus the 7 new `file.open`/capabilities cases ≈ 39).
- [ ] **Step 6: Commit**
```bash
git add src/slic3r/GUI/Automation/JsonRpcDispatcher.cpp tests/automation/test_dispatcher.cpp
git commit -m "feat(automation): advertise file.open in automation.version capabilities"
```
---
## Task 4: Implement `WxUiBackend::open_files` (real GUI-thread load)
Not covered by the headless unit suite (`WxUiBackend.cpp` is excluded from `automation_tests`); verified by the full app build + the manual runtime check in Task 8.
**Files:**
- Modify: `src/slic3r/GUI/Automation/WxUiBackend.hpp:21`
- Modify: `src/slic3r/GUI/Automation/WxUiBackend.cpp`
- [ ] **Step 1: Declare the override**
In `src/slic3r/GUI/Automation/WxUiBackend.hpp`, after the `screenshot_window` declaration (line 21) add:
```cpp
PngImage screenshot_window(const UiNode* target) override;
int open_files(const std::vector<std::string>& paths) override;
```
- [ ] **Step 2: Implement `open_files`**
In `src/slic3r/GUI/Automation/WxUiBackend.cpp`, add the implementation just before the final `}}} // namespace Slic3r::GUI::Automation` (currently line 306):
```cpp
int WxUiBackend::open_files(const std::vector<std::string>& paths) {
return run_on_gui(m_gui_timeout_ms, [&]() -> int {
Plater* plater = wxGetApp().plater();
if (plater == nullptr)
throw AutomationError(kErrLoadFailed, "no plater to load into");
// Default strategy matches drag-drop / Plater::load_files's own default: it
// routes .3mf as a project and meshes as models based on file content, so no
// as_project flag is needed in v1. ask_multi=false: never prompt.
const LoadStrategy strategy = LoadStrategy::LoadModel | LoadStrategy::LoadConfig;
std::vector<size_t> loaded;
try {
loaded = plater->load_files(paths, strategy, /*ask_multi=*/false);
} catch (const std::exception& e) {
throw AutomationError(kErrLoadFailed,
std::string("load_files failed: ") + e.what());
}
if (loaded.empty())
throw AutomationError(kErrLoadFailed, "load_files loaded nothing");
return static_cast<int>(loaded.size());
});
}
```
Notes for the implementer:
- `LoadStrategy` and its `operator|` (namespace `Slic3r`, from `libslic3r/Format/bbs_3mf.hpp`) are already in scope: `WxUiBackend.cpp` includes `Plater.hpp` (line 7), which transitively pulls in the enum, and this translation unit lives in `Slic3r::GUI::Automation` so unqualified `LoadStrategy` resolves via the enclosing `Slic3r` namespace. No new include is required.
- `Plater::load_files(const std::vector<std::string>&, LoadStrategy, bool)` is the existing string overload (`Plater.hpp:379`) — no `boost::filesystem::path` conversion needed.
- `kErrLoadFailed` comes from `JsonRpcDispatcher.hpp`, already included at line 4.
- An `AutomationError` thrown inside the `run_on_gui` lambda is captured by the helper's `set_exception` and rethrown from `fut.get()`, so the 1007 code propagates to the dispatcher unchanged.
- [ ] **Step 3: Build the full app to verify it compiles and links**
Run: `cmake --build build --config RelWithDebInfo --target OrcaSlicer`
Expected: build succeeds (no missing-symbol / pure-virtual errors; `WxUiBackend` is now concrete).
- [ ] **Step 4: Commit**
```bash
git add src/slic3r/GUI/Automation/WxUiBackend.hpp src/slic3r/GUI/Automation/WxUiBackend.cpp
git commit -m "feat(automation): implement WxUiBackend::open_files via Plater::load_files"
```
---
## Task 5: Python client wrapper `OrcaClient.open`
**Files:**
- Modify: `tools/automation/orca_automation.py:80-82`
- [ ] **Step 1: Add the `open` method**
In `tools/automation/orca_automation.py`, after the `key` method (ends line 82), add:
```python
def key(self, keys) -> dict:
# keys: "ctrl+s" or ["ctrl", "s"]
return self._call("input.key", {"keys": keys})
def open(self, paths) -> dict:
"""Load one or more files into the running instance at runtime.
`paths` is a single absolute path string or a list of them. Paths are read
from the host filesystem by the server (localhost-only). Returns
{"ok": True, "loaded": <count>}. Raises OrcaError 1007 on load failure."""
if isinstance(paths, str):
paths = [paths]
return self._call("file.open", {"paths": list(paths)})
```
- [ ] **Step 2: Smoke-test the wrapper's normalization offline (no server needed)**
Run:
```bash
python -c "import sys; sys.path.insert(0, 'tools/automation'); import orca_automation as m; c = m.OrcaClient.__new__(m.OrcaClient); c._call = lambda meth, params=None: (meth, params); print(c.open('C:/a.stl')); print(c.open(['C:/a.stl','C:/b.stl']))"
```
Expected output:
```
('file.open', {'paths': ['C:/a.stl']})
('file.open', {'paths': ['C:/a.stl', 'C:/b.stl']})
```
- [ ] **Step 3: Commit**
```bash
git add tools/automation/orca_automation.py
git commit -m "feat(automation): add OrcaClient.open() wrapper for file.open"
```
---
## Task 6: Update `example_slice.py` to load at runtime via `file.open`
**Files:**
- Modify: `tools/automation/example_slice.py:26-52`
- [ ] **Step 1: Launch without the model arg, then call `open`**
In `tools/automation/example_slice.py`, change the `subprocess.Popen` call (lines 26-31) to drop the trailing model positional:
```python
proc = subprocess.Popen([
args.orca,
"--automation-server",
f"--automation-server-port={args.port}",
])
```
Then replace the project-load wait block (currently lines 46-51) so the model is loaded at runtime via `file.open` instead of relying on a launch-time positional:
```python
# Load the model into the already-running instance, then wait until the
# project reports loaded. file.open is synchronous, so project_loaded is
# already true on return; the wait is a belt-and-suspenders guard.
orca.open([args.model])
deadline = time.time() + 30
while time.time() < deadline:
if orca.app_state().get("project_loaded"):
break
time.sleep(0.5)
```
- [ ] **Step 2: Byte-compile the script to confirm no syntax errors**
Run: `python -m py_compile tools/automation/example_slice.py`
Expected: no output, exit code 0.
- [ ] **Step 3: Commit**
```bash
git add tools/automation/example_slice.py
git commit -m "docs(automation): example_slice.py loads model at runtime via file.open"
```
---
## Task 7: Document `file.open` in `doc/automation.md`
**Files:**
- Modify: `doc/automation.md` (capabilities example §4 line 111-114; new method subsection after `screenshot.window`; error table §7)
- [ ] **Step 1: Add `file.open` to the capabilities example**
In `doc/automation.md`, update the `automation.version` result example (lines 111-114) to include `file.open`:
```json
"capabilities": [
"tree.dump", "tree.find", "widget.get", "input.click", "input.type",
"input.key", "sync.wait_for", "app.state", "screenshot.window", "file.open"
]
```
The §4 prose count is already written for this: "There are 11 methods … the 10 callable feature methods" now matches exactly (10 capability entries + `automation.version` = 11). Leave that sentence unchanged.
- [ ] **Step 2: Add the `file.open` method subsection**
In `doc/automation.md`, immediately after the `screenshot.window` method subsection (it ends just before the `---` on line 303) and before that `---`, insert:
```markdown
### `file.open`
Load one or more files into the **already-running** instance at runtime, by calling
`Plater::load_files(...)` directly on the GUI thread. This is the supported way to add
or swap a model without relaunching the process. Loading is **synchronous**: when the
call returns `ok: true`, `app.state().project_loaded` is already `true` (no polling
race).
**Params:**
| Param | Type | Required | Meaning |
|---|---|---|---|
| `paths` | string or array of strings | yes | One or more **absolute** file paths. A bare string is accepted and treated as a one-element list. Paths are read from the **host (server) filesystem** — client and server are localhost-only. |
`.3mf` files are routed as projects and meshes as models automatically, based on file
content (the same default strategy as drag-drop); there is no `as_project` flag in v1.
**Result:** `{ "ok": true, "loaded": <int> }`, where `loaded` is the number of objects
added to the scene (`load_files(...).size()`).
**Errors:**
- `-32602` (invalid params) — `paths` is missing, is not a string/array, contains a
non-string entry, or yields no non-empty path.
- `1007` (load failed) — `load_files` returned empty or threw (file not found, parse
error, or unsupported format).
- `1004` (GUI busy) — the GUI-thread marshal timed out. An extremely large model can
exceed the marshal timeout and surface here; documented, not mitigated in v1.
```
- [ ] **Step 3: Add the `1007` row to the error-code table**
In `doc/automation.md` §7, in the application-specific codes table, after the `1006` row (line 395) add:
```markdown
| `1006` | Disabled. |
| `1007` | Load failed — `file.open`'s `load_files` returned empty or threw (not found, parse error, unsupported format). |
```
- [ ] **Step 4: Commit**
```bash
git add doc/automation.md
git commit -m "docs(automation): document file.open method and error 1007"
```
---
## Final verification
- [ ] **Step 1: Full automation unit suite green**
Run: `cmake --build build --config RelWithDebInfo --target automation_tests && build/tests/automation/RelWithDebInfo/automation_tests.exe --order rand --warn NoAssertions`
Expected: PASS — all cases (pre-existing ~32 + 7 new) green, no `NoAssertions` warnings on the new cases.
- [ ] **Step 2: Full app builds**
Run: `cmake --build build --config RelWithDebInfo --target ALL_BUILD -- -m`
Expected: build succeeds.
- [ ] **Step 3: Manual runtime check (requires a display)**
Launch with `--automation-server` and **no** model arg, then from a Python shell:
```python
from orca_automation import OrcaClient
orca = OrcaClient(port=13619)
print(orca.open(["C:/abs/path/cube.stl"])) # -> {'ok': True, 'loaded': 1}
print(orca.app_state()["project_loaded"]) # -> True
open("window.png","wb").write(orca.screenshot()) # PNG shows the loaded model
```
Expected: `loaded >= 1`, `project_loaded == True`, screenshot shows the model.
- [ ] **Step 4: Gating check (automation OFF is a no-op)**
Confirm by reading: with no `--automation-server` flag, the server/backend/dispatcher are never constructed (`GUI_App.cpp` `start_automation_server()` early-return), so `file.open` is unreachable. No new hot-path cost beyond the existing single bool check. (See `doc/automation.md` §Verification — disabled-path audit; this feature adds no new gating surface.)
---
## Backward compatibility
Additive only: one new method (`file.open`), one new error code (`1007`), one new capabilities entry, and one new backend interface method. No existing method, profile, project-file handling, or default behavior changes. The method is reachable only when `--automation-server` is passed.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,117 @@
# Design — `file.open` automation method (runtime model loading)
**Date:** 2026-06-03
**Branch:** `feature/automation`
**Status:** Approved for implementation
---
## Problem
Today a model can be loaded into OrcaSlicer **only at process launch**: the model path
is passed as a CLI positional arg and OrcaSlicer's normal startup file-loading ingests
it. The JSON-RPC automation protocol has **no** load method, so swapping or adding a
model in an already-running instance requires a fresh process launch.
Driving the native File→Import dialog via `input.click` is not a viable substitute: the
OS file picker is not a `wxWindow`, so it never appears in the `tree.dump` hierarchy
(`WxUiBackend::dump_tree` walks `wxGetApp().mainframe` children only), and `input.click`
can only target nodes resolved from that tree (no raw-coordinate click). Blind typing via
`input.type` is mechanically possible but unobservable: the native picker is not a
`wxDialog`, so `app.state().modal_dialog` and `sync.wait_for` cannot gate on it, leaving
only sleep-and-hope timing. A direct API method is the clean fix.
## Goal
Add a `file.open` JSON-RPC method that loads one or more files into a running instance by
calling `Plater::load_files(...)` directly on the GUI thread. Out of scope: any
dialog-driving mechanism (intercept hook or true OS-level drive) — explicitly deferred.
---
## Protocol
- **Method:** `file.open`
- **Params:** `{ "paths": ["C:/abs/a.stl", ...] }`
- A bare string is also accepted: `{ "paths": "C:/abs/a.stl" }`.
- Paths must be **absolute**. The server reads them from the host filesystem
(client/server are localhost-only).
- **Result:** `{ "ok": true, "loaded": <count> }`
- `count` is `load_files(...).size()` — the number of objects added to the scene.
- **Errors:**
| Code | Constant | Condition |
|------|----------|-----------|
| -32602 | `kInvalidParams` | `paths` missing/empty, a non-string entry, or no non-empty path |
| 1004 | `kErrGuiBusy` | GUI-thread marshal timed out (`m_gui_timeout_ms`) |
| 1007 | `kErrLoadFailed` | `load_files` returned empty / threw (not found, parse error, unsupported format) — **new code** |
## Semantics — synchronous
`Plater::load_files` runs and completes on the GUI thread. The backend marshals via the
existing `run_on_gui(m_gui_timeout_ms, …)` helper and returns only after the load
finishes. Consequently, when `file.open` returns `ok:true`, `app.state().project_loaded`
is already `true` — there is no polling race.
Rejected alternative — async "fire-and-poll-`project_loaded`": adds client complexity and
loses a definitive per-call error result, with no benefit since loading is synchronous.
**Caveat:** an extremely large model could exceed `m_gui_timeout_ms` and surface as
`1004 kErrGuiBusy`. Documented; not mitigated in v1.
## Load strategy (v1 minimal)
Pass the default `LoadStrategy::LoadModel | LoadStrategy::LoadConfig` (identical to
drag-drop / `Plater::load_files`'s default) with `ask_multi = false`. This already routes
`.3mf` files as projects and meshes as models based on file content, so **no `as_project`
flag is needed in v1**. A future `{ "as_project": bool }` flag remains possible but is not
implemented now.
---
## Components / files to touch
Follows the existing `screenshot_window` / `app_state` method pattern.
1. **`src/slic3r/GUI/Automation/IUiBackend.hpp`** — add pure-virtual
`int open_files(const std::vector<std::string>& paths)` returning the loaded count,
throwing `AutomationError` on failure. Header stays wx-free (no `LoadStrategy` leak).
2. **`src/slic3r/GUI/Automation/WxUiBackend.{hpp,cpp}`** — implement `open_files`:
`run_on_gui(m_gui_timeout_ms, …)``wxGetApp().plater()->load_files(paths, default_strategy, false)`;
throw `kErrLoadFailed` if the returned vector is empty.
3. **`src/slic3r/GUI/Automation/JsonRpcDispatcher.{hpp,cpp}`** —
- add `constexpr int kErrLoadFailed = 1007;`
- declare + define `m_file_open(params)` (param parsing/validation; accept string or
array; require ≥1 non-empty string path)
- add dispatch route `if (method == "file.open") return make_result(id, m_file_open(params));`
- add `"file.open"` to the capabilities array in `m_version`.
4. **`tests/automation/MockUiBackend.hpp`** — `open_files` override recording the paths
vector + a configurable return-count (and a throw/fail knob).
5. **`tests/automation/test_dispatcher.cpp`** — Catch2 v2 tests:
- array of paths → routes to backend, returns `loaded` count
- bare-string path → normalized to one path
- missing/empty `paths``-32602` (`kInvalidParams`)
- backend load failure → `1007`
- `automation.version` capabilities array includes `"file.open"`
6. **`tools/automation/orca_automation.py`** — `open(self, paths)` wrapper (normalize
`str``[str]`, send `file.open`).
7. **`tools/automation/example_slice.py`** — launch **without** a model arg, then
`orca.open([model])`, then wait for `project_loaded`.
8. **`doc/automation.md`** — document method (params/result/errors), add to the
capabilities list, method index, and error table (`1007`).
---
## Testing / verification
- **Build (Windows):** `cmake --build . --config RelWithDebInfo --target ALL_BUILD -- -m`.
- **Unit:** `automation` Catch2 suite green including new tests (≈31 → ≈34 cases).
- **Manual:** launch with `--automation-server` and **no** model arg → call `file.open`
→ confirm `app.state().project_loaded` flips `true` and `screenshot.window` shows the
model.
- **Gating:** unchanged — the server only runs under `--automation-server`, so the method
is a no-op (unreachable) when automation is disabled.
## Backward compatibility
Additive only: a new method, a new error code, and a new capabilities entry. No change to
existing methods, profiles, project-file handling, or default behavior.

View File

@@ -0,0 +1,314 @@
# OrcaSlicer UI Automation — Design Spec
**Date:** 2026-06-03
**Status:** Approved design, pending implementation plan
**Topic:** Add an opt-in, externally-controllable UI automation interface to OrcaSlicer for automated GUI testing and future AI-agent control.
---
## 1. Overview
Add a localhost JSON-RPC server to a running OrcaSlicer GUI instance that lets an
**external** script (or AI agent) drive and observe the real GUI. "Driving" is done
the way a user would — simulated mouse/keyboard via `wxUIActionSimulator` — while
"observing" reads the live widget state and captures screenshots.
The interface must cover **three UI technologies** present in OrcaSlicer:
1. Native **wxWidgets** widgets (`wxWindow` hierarchy).
2. The **OpenGL 3D viewport** (`GLCanvas3D`) — screenshots via the existing
framebuffer/thumbnail path.
3. **Dear ImGui** immediate-mode controls (gizmo panels, in-canvas overlays,
notifications) — recorded as they are drawn, because there is no persistent tree.
## 2. Goals / Non-Goals
### Goals
- Let an external, language-agnostic client connect to a running instance and:
introspect the UI, locate widgets by stable name, perform input actions, wait on
conditions, and capture screenshots (including the 3D view as a separate image).
- Be safe by default: disabled unless explicitly enabled; bound to `127.0.0.1` only.
- Be testable in CI without a display (pure-logic units behind a mock backend).
- Ship a reference Python client, a runnable end-to-end example, protocol docs, and
C++ unit tests.
### Non-Goals (v1)
- No headless/offscreen automation — OS input injection needs a focused, visible
window (Linux CI requires a display, e.g. Xvfb).
- No auth token in v1 (documented future hardening; localhost-only is the boundary).
- No per-item coverage of raw-`ImGui::` gizmos (Emboss/SVG/Text). They get
window-level coverage; per-item is future work.
- No new scripting language embedded in the app; control is purely external over JSON-RPC.
- We do **not** modify the existing auth `HttpServer`.
## 3. Background — existing infrastructure (verified)
- **`wxUIActionSimulator`** is compiled into the wx build and already used
(`src/slic3r/GUI/GUI_ObjectList.cpp:211`). Cross-platform simulated input is available.
- **`GLCanvas3D::render_thumbnail()`** (`src/slic3r/GUI/GLCanvas3D.cpp:2210+`) →
`render_thumbnail_framebuffer()` (`:6352`) renders the 3D scene into a
`ThumbnailData` (RGBA) via an FBO + `glReadPixels`. `debug_output_thumbnail()`
(`:6099`) shows the `ThumbnailData → wxImage → PNG` conversion. This is the
separate-3D-screenshot path. `Plater::generate_thumbnail()`/`generate_thumbnails()`
wrap it.
- **`ImGuiWrapper`** (`src/slic3r/GUI/ImGuiWrapper.hpp`) is the chokepoint for nearly
all ImGui controls: `button`/`bbl_button`, `checkbox`/`bbl_checkbox`, `combo`,
`slider_float`, `input_double`, `radio_button`, `menu_item_with_icon`, plus
`begin`/`end` for windows. `imgui_internal.h` is in-tree, exposing
`ImGui::GetCurrentContext()->Windows`, item rects, and hovered/active id.
- **`HttpServer`** (`src/slic3r/GUI/HttpServer.{hpp,cpp}`, boost::beast, port 13618)
is used for cloud auth. **It cannot serve a POST body**`session::read_body()`
reads and discards the body and never replies (`HttpServer.cpp:57-65`). It is
effectively GET-only. We will **not** reuse or modify it.
- **`OtherInstanceMessageHandler`** (`src/slic3r/GUI/InstanceCheck.{hpp,cpp}`) is the
template for "start a localhost listener once the MainFrame exists, post events into
the GUI." Useful as a structural reference.
- **CLI args** are parsed in `src/OrcaSlicer.cpp` (`CLI::setup`/`CLI::run`) and flow
into the GUI run params consumed by `GUI_App::OnInit()`.
## 4. Architecture
```
External script / AI agent ──► Python client (orca_automation.py)
│ HTTP POST /jsonrpc (JSON-RPC 2.0) on 127.0.0.1:<port>
AutomationServer (dedicated boost::beast listener; own thread;
│ started only when --automation-server is set)
│ parse JSON-RPC envelope
JsonRpcDispatcher (pure logic — method registry; unit-testable)
│ marshal each call to the GUI thread via wxGetApp().CallAfter
│ + std::promise/future with a per-request timeout
IUiBackend (interface) ──► WxUiBackend (real, GUI thread) / MockBackend (tests)
├─ Introspection : walk wxWindow tree + read ImGui item table → unified JSON
├─ Locator : resolve automation-id / predicate → wx widget or ImGui item
├─ Actions : raise window, then wxUIActionSimulator click/type/key
├─ Sync : wait_for (poll condition) + app.state snapshot
└─ Screenshots : wx widget → wxDC→PNG ; 3D view → render_thumbnail()→PNG
```
### Components (new files unless noted)
All new code lives under `src/slic3r/GUI/Automation/`.
| Component | Responsibility |
|---|---|
| `AutomationServer.{hpp,cpp}` | Dedicated boost::beast HTTP listener with **POST + body** support; one `POST /jsonrpc` endpoint; returns `application/json`. Localhost-only. Own thread. |
| `JsonRpcDispatcher.{hpp,cpp}` | Parse JSON-RPC 2.0; route `method` → handler; build result/error. Depends only on `IUiBackend`. No wx/ImGui includes → unit-testable. |
| `IUiBackend.hpp` | Abstract interface: `dump_tree`, `find`, `get_widget`, `click`, `type`, `key`, `wait_for`, `app_state`, `screenshot_window`, `screenshot_viewport3d`. Uses plain structs (no wx types) so tests can mock it. |
| `WxUiBackend.{hpp,cpp}` | Real implementation. Runs on GUI thread. Walks `wxWindow` tree, reads the ImGui item table, drives `wxUIActionSimulator`, captures screenshots. |
| `MockUiBackend.{hpp,cpp}` (tests) | Deterministic fake tree + recorded actions for unit tests. |
| `AutomationRegistry.{hpp,cpp}` | Process-wide `wxWindow* → automation_id` map + reverse lookup; `set_automation_id(win, "id")` helper. Header is dependency-light so widget-construction code can call the helper unconditionally (it is a cheap no-op-safe registration). |
| `WidgetSerializer.{hpp,cpp}` | `wxWindow` → JSON node (name/id, class, label, screen-rect, enabled, shown, value via RTTI). |
| `ImGuiItemTable.{hpp,cpp}` | Per-frame recorder of ImGui items + live-window enumeration. Populated from `ImGuiWrapper`; read on GUI thread. |
### Touch points in existing files
- `src/slic3r/GUI/ImGuiWrapper.cpp` — add recording hooks inside the wrapped widget
methods and `begin`/`end`, **guarded by an `is_automation_enabled()` flag** so there
is zero overhead and zero behavior change when automation is off.
- `src/slic3r/GUI/GUI_App.{hpp,cpp}` — own the `AutomationServer`; start it in
`OnInit()` only when the flag is set; stop it on exit. Expose
`is_automation_enabled()`.
- `src/OrcaSlicer.cpp` — parse `--automation-server[=PORT]`; pass through GUI run params.
- A handful of widget-construction sites (Slice/Export buttons, preset combos, main
tabs, common dialog OK/Cancel, the 3D canvas) — add `set_automation_id(...)` calls
(~15-20 widgets in v1).
- CMake: add the new `Automation/` sources to the GUI target; add the unit-test target.
## 5. Transport & Protocol
- **Transport:** HTTP/1.1 on `127.0.0.1:<port>` (default **13619**, adjacent to the
auth server's 13618). Single endpoint: `POST /jsonrpc`, body is a JSON-RPC 2.0
request, response is a JSON-RPC 2.0 result/error. `GET /` returns a tiny health/version page.
- **Protocol:** JSON-RPC 2.0. `id`, `method`, `params`. Batch not required in v1.
### v1 methods
| Method | Params | Result |
|---|---|---|
| `automation.version` | — | `{version, protocol, capabilities[]}` |
| `tree.dump` | `{root?, max_depth?, visible_only?, include_imgui?}` | tree of nodes (wx + imgui) |
| `tree.find` | `{name?, class?, label?, value?, backend?}` | `[node...]` matches |
| `widget.get` | `{target}` | single node detail |
| `input.click` | `{target, button?=left, double?=false, modifiers?[]}` | `{ok}` |
| `input.type` | `{target?, text}` | `{ok}` |
| `input.key` | `{keys}` e.g. `"ctrl+s"` or `["ctrl","s"]` | `{ok}` |
| `sync.wait_for` | `{target, state: exists\|visible\|enabled\|value, value?, timeout_ms?=5000, poll_ms?=100}` | `{ok, elapsed_ms}` |
| `app.state` | — | `{active_tab, project_loaded, slicing, slice_progress, modal_dialog?, foreground}` |
| `screenshot.window` | `{target?}` (default main frame) | `{png_base64, width, height}` |
| `screenshot.viewport3d` | `{plate?, width?, height?}` | `{png_base64, width, height}` |
### Node shape (unified for wx and ImGui)
```json
{
"backend": "wx" | "imgui",
"id": "btn_slice", // automation id if set, else derived path id
"path": "MainFrame/.../btn_slice", // stable-ish positional path
"class": "Button", // wx class name or imgui item type
"label": "Slice plate",
"rect": { "x": 100, "y": 200, "w": 120, "h": 32 }, // screen coords
"enabled": true,
"visible": true,
"value": "PLA", // when applicable (text/choice/check/slider)
"children": [ ... ] // wx only; imgui items are flat under their window
}
```
### Error model (JSON-RPC `error.code`)
- `-32700` parse error, `-32601` method not found, `-32602` invalid params (standard).
- Application codes: `1001` widget/target not found, `1002` target not actionable
(disabled/hidden), `1003` wait timeout, `1004` GUI thread busy/timeout,
`1005` screenshot failed, `1006` automation feature disabled.
## 6. Threading model
- `AutomationServer` runs on its own thread and accepts connections; the dispatcher
parses on that thread.
- **Every** call touching wx/ImGui/GL is marshaled to the GUI thread with
`wxGetApp().CallAfter([...]{ ... })`; the server thread blocks on a `std::future`
with a per-request timeout (default 5 s; `wait_for` uses its own larger budget).
Timeout → error `1004`.
- This is mandatory: wx widgets, the ImGui context, and the GL context are not
thread-safe and are owned by the GUI thread.
- `CallAfter` is serviced even while modal dialogs run (nested event loop), so
automation can interact with dialogs.
## 7. Widget locator & automation IDs (wxWidgets)
- **Stable IDs:** `set_automation_id(window, "btn_slice")` registers the widget in
`AutomationRegistry`. Stored in a side map keyed by `wxWindow*` (not via `SetName`,
to avoid any coupling with wx's name-based lookups). Registration is removed on
widget destruction (bind to `wxEVT_DESTROY` or prune lazily on lookup).
- **Derived IDs:** for un-instrumented widgets, `WidgetSerializer` derives a positional
`path` (e.g. `MainFrame/Panel[2]/Button[0]`) so an AI agent can still target anything.
Named IDs are the preferred, stable path.
- **Locator resolution order:** exact automation id → exact path → predicate match
(name/class/label/value). Ambiguous matches return the list via `tree.find`; action
methods require a unique match or error `1001`.
- **v1 instrumented widgets (~15-20):** Slice/Export buttons, printer & filament preset
combos, the main tab buttons (`tp3DEditor`/`tpPreview`/`tpMonitor`/…), Add/Import,
common dialog OK/Cancel/Yes/No, the `GLCanvas3D` itself.
## 8. ImGui coverage (v1 = wrapper items + window introspection)
- **Item recording:** inside each `ImGuiWrapper` wrapped method, when
`is_automation_enabled()` is true, append the just-drawn item to a per-frame
`ImGuiItemTable` entry: `{window_name, label/id, type, rect, enabled, value}`.
Item rect comes from `ImGui::GetItemRectMin/Max()` (ImGui display coords) mapped to
**screen** coords via the `GLCanvas3D` client origin (`ClientToScreen`) and DPI scale.
- **Window enumeration:** via `imgui_internal.h`, enumerate `GetCurrentContext()->Windows`
for window name, rect, visibility, plus the global hovered/active item id.
- **Double-buffering:** the table is swapped at frame end (`ImGuiWrapper::render`) so
readers see a complete frame. Reads happen on the GUI thread (after marshaling), same
thread as rendering, so a simple front/back swap suffices.
- **Freshness:** because items exist only while drawn, before an ImGui tree read or
action the backend forces a canvas refresh and flushes events so the latest frame is
captured. `sync.wait_for` can poll for an ImGui item to appear (e.g. after opening a
gizmo).
- **Actions:** an ImGui target resolves to its recorded screen rect; `input.click`/
`input.type` use `wxUIActionSimulator` on that rect — identical action path to wx,
different rect source. Typing into an ImGui input works because simulated keystrokes
flow through the existing `ImGuiWrapper::update_key_data` bridge once the field is
focused by a click.
- **Limitation (documented):** raw-`ImGui::` gizmos (Emboss, SVG, Text) are covered at
the **window** level only in v1; per-item instrumentation is future work.
## 9. Screenshots
- **`screenshot.window`:** capture a `wxWindow` (default: main frame) via
`wxClientDC`/`wxWindowDC``wxBitmap``wxImage` → PNG → base64. Works for native
widgets but **not** for the GL canvas region (returns black there) — hence the
separate 3D method.
- **`screenshot.viewport3d`:** reuse `GLCanvas3D::render_thumbnail()` (FBO +
`glReadPixels`) → `ThumbnailData``wxImage` (per `debug_output_thumbnail`) → PNG →
base64. Optional `plate`, `width`, `height` params. Runs on the GUI thread with the GL
context current.
## 10. Activation & security
- **Off by default.** Enabled by CLI flag `--automation-server[=PORT]` (default port
13619). (An app-config/Preferences toggle may be added later; v1 is flag-only.)
- **Bind `127.0.0.1` only.** No external interface.
- **No token in v1** (per decision); documented as a recommended future hardening,
along with an optional `--automation-token`.
- When disabled: no listener, no thread, and all `ImGuiWrapper` recording hooks are
skipped — **zero** runtime overhead and **zero** behavior change. This satisfies the
project's "features gated by options must not affect existing behavior when disabled"
constraint.
## 11. Testability
- `JsonRpcDispatcher` depends only on `IUiBackend` and has **no** wx/ImGui/GL includes.
- **C++ unit tests (Catch2), display-free, run in CI:**
- JSON-RPC envelope parse/validate/dispatch (good + malformed input, error codes).
- Method routing and param validation for every v1 method against `MockUiBackend`.
- `WidgetSerializer` node shape (fed a synthetic node model, not real wx widgets).
- Locator resolution: exact id, path, predicate, ambiguity, not-found.
- The only piece needing a real GUI is `WxUiBackend`; it is exercised by the manual
end-to-end example, not by CI unit tests.
## 12. Deliverables
- **C++:** the `Automation/` components, `ImGuiWrapper` recording hooks, widget
instrumentation, CLI flag plumbing, `GUI_App` lifecycle, CMake wiring.
- **`tools/automation/orca_automation.py`:** reference Python client wrapping the
JSON-RPC calls (`connect`, `version`, `dump_tree`, `find`, `click`, `type`, `key`,
`wait_for`, `app_state`, `screenshot`, `screenshot_3d`).
- **`tools/automation/example_slice.py`:** runnable end-to-end flow — launch OrcaSlicer
with the flag, load a model, click Slice, `wait_for` completion, save a 3D-preview PNG.
Doubles as a manual smoke test.
- **`doc/automation.md`:** protocol reference (methods, params, results, error codes),
node shape, automation-id naming conventions, ImGui notes, platform/display caveats.
- **`tests/`:** Catch2 unit-test target for the dispatch/serialize/locator logic.
## 13. New / changed file inventory
**New**
- `src/slic3r/GUI/Automation/AutomationServer.{hpp,cpp}`
- `src/slic3r/GUI/Automation/JsonRpcDispatcher.{hpp,cpp}`
- `src/slic3r/GUI/Automation/IUiBackend.hpp`
- `src/slic3r/GUI/Automation/WxUiBackend.{hpp,cpp}`
- `src/slic3r/GUI/Automation/AutomationRegistry.{hpp,cpp}`
- `src/slic3r/GUI/Automation/WidgetSerializer.{hpp,cpp}`
- `src/slic3r/GUI/Automation/ImGuiItemTable.{hpp,cpp}`
- `tools/automation/orca_automation.py`
- `tools/automation/example_slice.py`
- `doc/automation.md`
- `tests/automation/` (Catch2 target) + `MockUiBackend.{hpp,cpp}`
**Changed**
- `src/slic3r/GUI/ImGuiWrapper.cpp` (guarded recording hooks)
- `src/slic3r/GUI/GUI_App.{hpp,cpp}` (server lifecycle, `is_automation_enabled()`)
- `src/OrcaSlicer.cpp` (CLI flag)
- ~15-20 widget-construction sites (`set_automation_id`)
- `src/slic3r/GUI/CMakeLists.txt` + `tests/CMakeLists.txt`
## 14. Known constraints & limitations
- OS input injection requires the OrcaSlicer window **focused and visible**; the backend
raises/focuses the main window before injecting. Linux CI needs a display (Xvfb).
- Input is asynchronous at the OS level; correctness relies on `sync.wait_for` rather
than fixed sleeps.
- ImGui items are only addressable while their host panel is drawn.
- Raw-`ImGui::` gizmos: window-level only in v1.
- Single-client assumption in v1 (serialized request handling); no concurrent sessions
contract.
## 15. Future work (out of scope for v1)
- Optional auth token + Preferences toggle.
- WebSocket channel for server-push events (slice progress, dialog-appeared).
- Per-item instrumentation for raw-`ImGui::` gizmos.
- An MCP server wrapping the JSON-RPC client for direct AI-agent integration.
- Optional integration of Dear ImGui Test Engine for deterministic ImGui interaction.
## 16. Verification plan
- **CI:** Catch2 unit tests (dispatch/serialize/locator) pass with no display.
- **Manual / e2e:** run `tools/automation/example_slice.py` against a built OrcaSlicer
launched with `--automation-server`; confirm model loads, Slice runs, `wait_for`
returns on completion, and both a wx-window PNG and a 3D-viewport PNG are produced.
- **Regression:** build and run with automation **off**; confirm no new threads, no
listener, and ImGui rendering is byte-for-byte unchanged (hooks compiled out of the
hot path via the disabled flag).

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -187,15 +187,6 @@ msgstr ""
msgid "Support Generated"
msgstr ""
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr ""
@@ -281,15 +272,6 @@ msgstr ""
msgid "To:"
msgstr ""
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr ""
@@ -309,15 +291,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr ""
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr ""
@@ -700,15 +673,6 @@ msgstr ""
msgid "Delete connector"
msgstr ""
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr ""
@@ -1550,12 +1514,6 @@ msgstr ""
msgid "Flip by Face 2"
msgstr ""
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr ""
@@ -1589,12 +1547,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr ""
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr ""
@@ -1853,20 +1805,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3086,45 +3024,6 @@ msgstr ""
msgid "The minmum temperature should not be less than "
msgstr ""
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr ""
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr ""
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr ""
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3365,9 +3264,6 @@ msgstr ""
msgid "There is no valid surface for text projection."
msgstr ""
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr ""
@@ -8080,6 +7976,9 @@ msgstr ""
msgid "Group user filament presets based on selection"
msgstr ""
msgid "All"
msgstr ""
msgid "By type"
msgstr ""
@@ -8420,14 +8319,6 @@ msgstr ""
msgid "Associate files to OrcaSlicer"
msgstr ""
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr ""
@@ -9188,9 +9079,6 @@ msgid ""
"operation or verify if the printer is functioning properly."
msgstr ""
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr ""
@@ -9559,9 +9447,6 @@ msgstr ""
msgid "Travel speed"
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid "Jerk(XY)"
msgstr ""
@@ -10352,6 +10237,9 @@ msgid ""
"list."
msgstr ""
msgid "Advanced settings"
msgstr ""
msgid "Add unused AMS filaments to filaments list."
msgstr ""
@@ -10810,23 +10698,12 @@ msgstr ""
msgid "New version of Orca Slicer"
msgstr ""
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr ""
#, possible-c-format, possible-boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr ""
@@ -10930,9 +10807,6 @@ msgstr ""
msgid "Auto Fire Extinguishing System"
msgstr ""
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr ""
@@ -11926,7 +11800,7 @@ msgid "External bridge density"
msgstr ""
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -11940,14 +11814,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr ""
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -11982,9 +11860,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, possible-c-format, possible-boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -13688,6 +13568,9 @@ msgstr ""
msgid "Default jerk."
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -18749,6 +18632,9 @@ msgstr ""
msgid "Filament Preset Template"
msgstr ""
msgid "Deselect All"
msgstr ""
msgid "Process Preset Template"
msgstr ""
@@ -19167,21 +19053,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, possible-c-format, possible-boost-format
msgid "Mismatched type of print host: %s"
msgstr ""
@@ -19819,105 +19693,6 @@ msgstr ""
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, possible-boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr ""
@@ -19968,12 +19743,6 @@ msgstr ""
msgid "Please select single object."
msgstr ""
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr ""
@@ -19983,9 +19752,6 @@ msgstr ""
msgid "Load skipping objects information failed. Please try again."
msgstr ""
msgid "Failed to create the temporary folder."
msgstr ""
#, possible-c-format, possible-boost-format
msgid "/%d Selected"
msgstr ""
@@ -20131,100 +19897,6 @@ msgstr ""
msgid "Calculating, please wait..."
msgstr ""
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, possible-boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-03-15 10:55+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -202,15 +202,6 @@ msgstr "Fet"
msgid "Support Generated"
msgstr "Suport generat"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Recolzar sobre la Cara"
@@ -298,15 +289,6 @@ msgstr "Pintat amb: Filament %1%"
msgid "To:"
msgstr "A:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Pell difusa pintada"
@@ -328,15 +310,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Activa la pell difusa pintada per a aquest objecte"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Moure"
@@ -727,15 +700,6 @@ msgstr "Tall per línia"
msgid "Delete connector"
msgstr "Suprimeix el connector"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Nom de la malla"
@@ -1613,12 +1577,6 @@ msgstr "Distància paral·lela:"
msgid "Flip by Face 2"
msgstr "Gira per la cara 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Ensamblar"
@@ -1656,12 +1614,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Muntatge cara a cara"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1950,20 +1902,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3256,45 +3194,6 @@ msgstr "La temperatura màxima no pot superar "
msgid "The minmum temperature should not be less than "
msgstr "La temperatura mínima no hauria de ser inferior a "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Tots"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Deseleccionar-ho tot"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Configuració avançada"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3578,9 +3477,6 @@ msgstr "La tipografia no té cap forma per al text indicat."
msgid "There is no valid surface for text projection."
msgstr "No hi ha cap superfície vàlida per a la projecció del text."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Precondicionament tèrmic per a l'optimització de la primera capa"
@@ -8820,6 +8716,9 @@ msgstr "Agrupa els perfils de filament de l'usuari"
msgid "Group user filament presets based on selection"
msgstr "Agrupa els perfils de filament de l'usuari segons la selecció"
msgid "All"
msgstr "Tots"
msgid "By type"
msgstr "Per tipus"
@@ -9202,14 +9101,6 @@ msgstr "Descarrega el connector de xarxa"
msgid "Associate files to OrcaSlicer"
msgstr "Associar fitxers a OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Associar .3mf fitxers a OrcaSlicer"
@@ -10088,9 +9979,6 @@ msgstr ""
"firmware admet aquesta operació o verifiqueu si la impressora funciona "
"correctament."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Laminat ok."
@@ -10551,9 +10439,6 @@ msgstr "Establir la velocitat dels ponts externs i interns"
msgid "Travel speed"
msgstr "Velocitat de desplaçament"
msgid "Junction Deviation"
msgstr "Desviació de cruïlla"
msgid "Jerk(XY)"
msgstr "Sacsejada( XY )-Jerk( XY )"
@@ -11436,6 +11321,9 @@ msgstr ""
"els filaments de la impressora. Els filaments de la impressora no utilitzats "
"s'afegiran automàticament al final de la llista."
msgid "Advanced settings"
msgstr "Configuració avançada"
msgid "Add unused AMS filaments to filaments list."
msgstr "Afegeix filaments d'AMS no utilitzats a la llista de filaments."
@@ -11946,23 +11834,12 @@ msgstr "Un nou plugin de Xarxa( %s ) disponible, Vols instal·lar-lo?"
msgid "New version of Orca Slicer"
msgstr "Nova versió d'Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Omet aquesta versió"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Confirmar i Actualitzar el broquet"
@@ -12079,9 +11956,6 @@ msgstr "Mòdul de tall"
msgid "Auto Fire Extinguishing System"
msgstr "Sistema d'extinció automàtica d'incendis"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Actualitzar el firmware"
@@ -13330,7 +13204,7 @@ msgid "External bridge density"
msgstr "Densitat del pont exterior"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13344,14 +13218,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Densitat del pont intern"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13386,9 +13264,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15652,6 +15532,9 @@ msgstr "El max_accel_to_decel de Klipper s'ajustarà a aquest %% d'acceleració"
msgid "Default jerk."
msgstr "Jerk predeterminat."
msgid "Junction Deviation"
msgstr "Desviació de cruïlla"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21892,6 +21775,9 @@ msgstr "Perfil d'Impressora"
msgid "Filament Preset Template"
msgstr "Plantilla de Perfil de Filament"
msgid "Deselect All"
msgstr "Deseleccionar-ho tot"
msgid "Process Preset Template"
msgstr "Plantilla de Perfil de Processament"
@@ -22415,21 +22301,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Tipus d'amfitrió( host ) d'impressió no coincident: %s"
@@ -23252,105 +23126,6 @@ msgstr "No s'ha pogut connectar a Flashforge per sèrie"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "L'estat proporcionat no és correcte."
@@ -23405,12 +23180,6 @@ msgstr "Orelles de la Vora d'Adherència"
msgid "Please select single object."
msgstr "Seleccioneu un sol objecte."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Allunya"
@@ -23421,9 +23190,6 @@ msgid "Load skipping objects information failed. Please try again."
msgstr ""
"La càrrega d'informació dels objectes a ometre ha fallat. Torneu-ho a provar."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Seleccionats"
@@ -23574,100 +23340,6 @@ msgstr "Nombre de cares triangulars"
msgid "Calculating, please wait..."
msgstr "Calculant, espereu..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: Jakub Hencl\n"
"Language-Team: \n"
@@ -195,15 +195,6 @@ msgstr "Hotovo"
msgid "Support Generated"
msgstr "Vygenerovaná podpora"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Umístit na plochu"
@@ -292,15 +283,6 @@ msgstr "Namáznuto pomocí: Filament %1%"
msgid "To:"
msgstr "Do:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Malování na povrch fuzzy skin"
@@ -320,15 +302,6 @@ msgstr "Varování: Fuzzy skin je vypnuta, malovaná fuzzy skin se neprojeví!"
msgid "Enable painted fuzzy skin for this object"
msgstr "Povolit malovanou (ručně aplikovanou) fuzzy skin pro tento objekt."
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Přesunout"
@@ -719,15 +692,6 @@ msgstr "Řezat podle čáry"
msgid "Delete connector"
msgstr "Smazat konektor"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Název sítě"
@@ -1585,12 +1549,6 @@ msgstr "Paralelní vzdálenost:"
msgid "Flip by Face 2"
msgstr "Převrátit podle plochy 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Sestavit"
@@ -1627,12 +1585,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Sestavení plochaplocha"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1914,20 +1866,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3213,45 +3151,6 @@ msgstr "The maximum temperature cannot exceed "
msgid "The minmum temperature should not be less than "
msgstr "The minmum temperature should not be less than "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Vše"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Odznačit vše"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3528,9 +3427,6 @@ msgstr "Font doesn't have any shape for given text."
msgid "There is no valid surface for text projection."
msgstr "There is no valid surface for text projection."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Thermal Preconditioning for first layer optimization"
@@ -8671,6 +8567,9 @@ msgstr "Group user filament presets"
msgid "Group user filament presets based on selection"
msgstr "Group user filament presets based on selection"
msgid "All"
msgstr "Vše"
msgid "By type"
msgstr "By type"
@@ -9041,14 +8940,6 @@ msgstr "Download Network Plug-in"
msgid "Associate files to OrcaSlicer"
msgstr "Přiřadit soubory k OrcaSliceru"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Associate 3MF files to OrcaSlicer"
@@ -9880,9 +9771,6 @@ msgstr ""
"File upload timed out. Please check if the firmware version supports this "
"operation or verify if the printer is functioning properly."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Řezání proběhlo v pořádku."
@@ -10328,9 +10216,6 @@ msgstr "Nastavit rychlost pro vnější a vnitřní mosty"
msgid "Travel speed"
msgstr "Rychlost přejezdu"
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid "Jerk(XY)"
msgstr "Jerk(XY)"
@@ -11200,6 +11085,9 @@ msgstr ""
"And unused printer filaments will be automatically added to the end of the "
"list."
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Add unused AMS filaments to filaments list."
msgstr "Add unused AMS filaments to filaments list."
@@ -11698,23 +11586,12 @@ msgstr "Je dostupný nový síťový doplněk (%s). Chcete to nainstalovat?"
msgid "New version of Orca Slicer"
msgstr "Nová verze Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Přeskočit tuto verzi"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Potvrdit a aktualizovat trysku"
@@ -11828,9 +11705,6 @@ msgstr "Řezací modul"
msgid "Auto Fire Extinguishing System"
msgstr "Auto Fire Extinguishing System"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Aktualizovat firmware"
@@ -13039,7 +12913,7 @@ msgid "External bridge density"
msgstr "Hustota externího mostu"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13053,14 +12927,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Hustota vnitřního mostu"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13095,9 +12973,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15260,6 +15140,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Výchozí trhání."
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21297,6 +21180,9 @@ msgstr "Předvolba tiskárny"
msgid "Filament Preset Template"
msgstr "Šablona filamentového přednastaveného profilu"
msgid "Deselect All"
msgstr "Odznačit vše"
msgid "Process Preset Template"
msgstr "Šablona předvolby procesu"
@@ -21797,21 +21683,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Nesouhlasný typ tiskového hostitele: %s"
@@ -22599,105 +22473,6 @@ msgstr "Nepodařilo se připojit k Flashforge přes sériový port"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Zadaný stav není správný."
@@ -22750,12 +22525,6 @@ msgstr "Ouška límce"
msgid "Please select single object."
msgstr "Vyberte jeden objekt."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Zoom Out"
@@ -22765,9 +22534,6 @@ msgstr "Zoom In"
msgid "Load skipping objects information failed. Please try again."
msgstr "Load skipping objects information failed. Please try again."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Selected"
@@ -22919,100 +22685,6 @@ msgstr "Number of triangular facets"
msgid "Calculating, please wait..."
msgstr "Calculating, please wait..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-05-18 09:32-0300\n"
"Last-Translator: Alexandre Folle de Menezes\n"
"Language-Team: \n"
@@ -183,15 +183,6 @@ msgstr ""
msgid "Support Generated"
msgstr "Support generated"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr ""
@@ -277,15 +268,6 @@ msgstr ""
msgid "To:"
msgstr ""
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr ""
@@ -305,15 +287,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr ""
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr ""
@@ -696,15 +669,6 @@ msgstr ""
msgid "Delete connector"
msgstr ""
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr ""
@@ -1546,12 +1510,6 @@ msgstr ""
msgid "Flip by Face 2"
msgstr ""
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr ""
@@ -1585,12 +1543,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr ""
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr ""
@@ -1853,20 +1805,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3093,45 +3031,6 @@ msgstr ""
msgid "The minmum temperature should not be less than "
msgstr ""
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr ""
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr ""
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr ""
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3378,9 +3277,6 @@ msgstr ""
msgid "There is no valid surface for text projection."
msgstr ""
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr ""
@@ -8172,6 +8068,9 @@ msgstr ""
msgid "Group user filament presets based on selection"
msgstr ""
msgid "All"
msgstr ""
msgid "By type"
msgstr ""
@@ -8512,14 +8411,6 @@ msgstr ""
msgid "Associate files to OrcaSlicer"
msgstr ""
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr ""
@@ -9291,9 +9182,6 @@ msgid ""
"operation or verify if the printer is functioning properly."
msgstr ""
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Slice complete"
@@ -9670,9 +9558,6 @@ msgstr ""
msgid "Travel speed"
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid "Jerk(XY)"
msgstr ""
@@ -10488,6 +10373,9 @@ msgid ""
"list."
msgstr ""
msgid "Advanced settings"
msgstr ""
msgid "Add unused AMS filaments to filaments list."
msgstr ""
@@ -10947,23 +10835,12 @@ msgstr ""
msgid "New version of Orca Slicer"
msgstr ""
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr ""
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr ""
@@ -11067,9 +10944,6 @@ msgstr ""
msgid "Auto Fire Extinguishing System"
msgstr ""
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr ""
@@ -12124,7 +11998,7 @@ msgid "External bridge density"
msgstr ""
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12138,14 +12012,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr ""
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12180,9 +12058,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -13951,6 +13831,9 @@ msgstr ""
msgid "Default jerk."
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -19168,6 +19051,9 @@ msgstr ""
msgid "Filament Preset Template"
msgstr ""
msgid "Deselect All"
msgstr ""
msgid "Process Preset Template"
msgstr ""
@@ -19610,21 +19496,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr ""
@@ -20263,105 +20137,6 @@ msgstr ""
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr ""
@@ -20412,12 +20187,6 @@ msgstr ""
msgid "Please select single object."
msgstr ""
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr ""
@@ -20427,9 +20196,6 @@ msgstr ""
msgid "Load skipping objects information failed. Please try again."
msgstr ""
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr ""
@@ -20575,100 +20341,6 @@ msgstr ""
msgid "Calculating, please wait..."
msgstr ""
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"Language: hu\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -194,15 +194,6 @@ msgstr "Kész"
msgid "Support Generated"
msgstr "Támasz legenerálva"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Felület Tárgyasztalra Illesztése"
@@ -290,15 +281,6 @@ msgstr "A következővel festve: %1% filament"
msgid "To:"
msgstr "Ide:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Festett bolyhos felület"
@@ -320,15 +302,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Festett bolyhos felület engedélyezése ennél az objektumnál"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Mozgatás"
@@ -718,15 +691,6 @@ msgstr "Vágás vonallal"
msgid "Delete connector"
msgstr "Csatlakozó törlése"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Háló neve"
@@ -1602,12 +1566,6 @@ msgstr "Párhuzamos távolság:"
msgid "Flip by Face 2"
msgstr "Tükrözés a 2. felület szerint"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Összeállítás"
@@ -1646,12 +1604,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Felület-felület összeállítás"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1934,20 +1886,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3253,45 +3191,6 @@ msgstr "A maximális hőmérséklet nem haladhatja meg ezt: "
msgid "The minmum temperature should not be less than "
msgstr "A minimális hőmérséklet nem lehet kevesebb ennél: "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Összes"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Kijelölés megszüntetése"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Előrehaladott beállítások"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3573,9 +3472,6 @@ msgstr "A betűtípus nem tartalmaz alakzatot a megadott szöveghez."
msgid "There is no valid surface for text projection."
msgstr "Nincs érvényes felület a szöveg vetítéséhez."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Hőelőkészítés az első réteg optimalizálásához"
@@ -8799,6 +8695,9 @@ msgstr "Felhasználói filamentbeállítások csoportosítása"
msgid "Group user filament presets based on selection"
msgstr "Felhasználói filamentbeállítások csoportosítása kiválasztás alapján"
msgid "All"
msgstr "Összes"
msgid "By type"
msgstr "Típus szerint"
@@ -9196,14 +9095,6 @@ msgstr "Hálózati bővítmény letöltése"
msgid "Associate files to OrcaSlicer"
msgstr "Fájlok társítása a OrcaSlicerhoz"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr ".3mf fájlok társítása a OrcaSlicerhoz"
@@ -10082,9 +9973,6 @@ msgstr ""
"Fájlfeltöltés időtúllépés. Ellenőrizd, hogy a firmware verzió támogatja-e "
"ezt a műveletet, és hogy a nyomtató megfelelően működik-e."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Szeletelés kész."
@@ -10542,9 +10430,6 @@ msgstr "Sebesség beállítása a külső és belső hidakhoz"
msgid "Travel speed"
msgstr "Mozgás sebessége"
msgid "Junction Deviation"
msgstr "Csomóponti eltérés"
msgid "Jerk(XY)"
msgstr "Jerk(XY)"
@@ -11454,6 +11339,9 @@ msgstr ""
"lecseréli. A nem használt nyomtató-filamentek automatikusan a lista végére "
"kerülnek."
msgid "Advanced settings"
msgstr "Előrehaladott beállítások"
msgid "Add unused AMS filaments to filaments list."
msgstr "A nem használt AMS filamentek hozzáadása a filamentlistához."
@@ -11966,23 +11854,12 @@ msgstr "Új hálózati bővítmény (%s) érhető el. Szeretnéd telepíteni?"
msgid "New version of Orca Slicer"
msgstr "A Orca Slicer új verziója"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr "Ellenőrizd a GitHub-on"
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Verzió kihagyása"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Fúvóka lecserélésének megerősítése"
@@ -12099,9 +11976,6 @@ msgstr "Vágómodul"
msgid "Auto Fire Extinguishing System"
msgstr "Automatikus tűzoltó rendszer"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Firmware frissítése"
@@ -13360,7 +13234,7 @@ msgid "External bridge density"
msgstr "Külső híd sűrűsége"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13374,14 +13248,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Belső híd sűrűsége"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13416,9 +13294,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15673,6 +15553,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Alapértelmezett jerk."
msgid "Junction Deviation"
msgstr "Csomóponti eltérés"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21972,6 +21855,9 @@ msgstr "Nyomtatóbeállítás"
msgid "Filament Preset Template"
msgstr "Filamentbeállítás sablon"
msgid "Deselect All"
msgstr "Kijelölés megszüntetése"
msgid "Process Preset Template"
msgstr "Folyamatbeállítás sablon"
@@ -22483,21 +22369,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "A nyomtatóállomás típusa nem egyezik: %s"
@@ -23314,105 +23188,6 @@ msgstr "Nem sikerült soros kapcsolaton keresztül csatlakozni a Flashforge-hoz"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "A megadott állapot nem megfelelő."
@@ -23466,12 +23241,6 @@ msgstr "Karimás Fülek"
msgid "Please select single object."
msgstr "Válassz ki egyetlen objektumot."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Kicsinyítés"
@@ -23481,9 +23250,6 @@ msgstr "Nagyítás"
msgid "Load skipping objects information failed. Please try again."
msgstr "A kihagyott objektumok adatainak betöltése sikertelen. Próbáld újra."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d kiválasztva"
@@ -23636,100 +23402,6 @@ msgstr "Háromszögfelületek száma"
msgid "Calculating, please wait..."
msgstr "Számítás folyamatban, kérlek várj..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -198,15 +198,6 @@ msgstr "Fatto"
msgid "Support Generated"
msgstr "Supporto generato"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Strumento selezione faccia come base"
@@ -295,15 +286,6 @@ msgstr "Dipinto utilizzando: Filamento %1%"
msgid "To:"
msgstr "A:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Dipingi superficie ruvida"
@@ -325,15 +307,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Abilita la superficie ruvida dipinta per questo oggetto"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Sposta"
@@ -724,15 +697,6 @@ msgstr "Taglia sulla linea"
msgid "Delete connector"
msgstr "Cancella connettore"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Nome maglia poligonale"
@@ -1625,12 +1589,6 @@ msgstr "Distanza parallela:"
msgid "Flip by Face 2"
msgstr "Capovolgi da Faccia 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Assembla"
@@ -1668,12 +1626,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Assemblaggio faccia a faccia"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1959,20 +1911,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3280,45 +3218,6 @@ msgstr "La temperatura massima non può superare "
msgid "The minmum temperature should not be less than "
msgstr "La temperatura minima non deve essere inferiore a "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Tutto"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Deseleziona tutto"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Impostazioni avanzate"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3602,9 +3501,6 @@ msgstr "Il carattere non ha alcuna forma per il testo specificato."
msgid "There is no valid surface for text projection."
msgstr "Non esiste una superficie valida per la proiezione del testo."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Precondizionamento termico per l'ottimizzazione del primo strato"
@@ -8883,6 +8779,9 @@ msgstr "Raggruppa profili di filamento utente"
msgid "Group user filament presets based on selection"
msgstr "Raggruppa i profili di filamento utente in base alla selezione"
msgid "All"
msgstr "Tutto"
msgid "By type"
msgstr "Per tipo"
@@ -9269,14 +9168,6 @@ msgstr "Scarica modulo di rete"
msgid "Associate files to OrcaSlicer"
msgstr "Associa i file ad OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Associa i file 3MF ad OrcaSlicer"
@@ -10155,9 +10046,6 @@ msgstr ""
"Timeout caricamento file. Verificare se la versione del firmware supporta "
"questa operazione o se la stampante funziona correttamente."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Elaborazione completa."
@@ -10624,9 +10512,6 @@ msgstr "Imposta la velocità per ponti esterni e interni"
msgid "Travel speed"
msgstr "Velocità di spostamento"
msgid "Junction Deviation"
msgstr "Deviazione di giunzione"
msgid "Jerk(XY)"
msgstr "Scatto(XY)"
@@ -11536,6 +11421,9 @@ msgstr ""
"sui filamenti della stampante. I filamenti della stampante non utilizzati "
"verranno aggiunti automaticamente alla fine della lista."
msgid "Advanced settings"
msgstr "Impostazioni avanzate"
msgid "Add unused AMS filaments to filaments list."
msgstr "Aggiungi filamenti AMS non utilizzati alla lista filamenti."
@@ -12059,23 +11947,12 @@ msgstr "È disponibile un nuovo modulo di rete (%s). Vuoi installarlo?"
msgid "New version of Orca Slicer"
msgstr "Nuova versione di OrcaSlicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr "Visualizza su GitHub"
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Salta questa versione"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Conferma e aggiorna l'ugello"
@@ -12194,9 +12071,6 @@ msgstr "Modulo di taglio"
msgid "Auto Fire Extinguishing System"
msgstr "Sistema antincendio automatico"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Aggiorna firmware"
@@ -13485,7 +13359,7 @@ msgid "External bridge density"
msgstr "Densità ponti esterni"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13499,14 +13373,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Densità ponti interni"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13541,9 +13419,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15851,6 +15731,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Jerk predefinito."
msgid "Junction Deviation"
msgstr "Deviazione di giunzione"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -22260,6 +22143,9 @@ msgstr "Profilo stampante"
msgid "Filament Preset Template"
msgstr "Modello profilo di filamento"
msgid "Deselect All"
msgstr "Deseleziona tutto"
msgid "Process Preset Template"
msgstr "Modello profilo di processo"
@@ -22776,21 +22662,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Tipo di host di stampa non corrispondente: %s"
@@ -23612,105 +23486,6 @@ msgstr "Impossibile connettersi a Flashforge tramite seriale"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Lo stato fornito non è corretto."
@@ -23767,12 +23542,6 @@ msgstr "Tese ad orecchio"
msgid "Please select single object."
msgstr "Seleziona un singolo oggetto."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Zoom indietro"
@@ -23782,9 +23551,6 @@ msgstr "Zoom avanti"
msgid "Load skipping objects information failed. Please try again."
msgstr "Caricamento informazioni sugli oggetti da saltare fallito. Riprovare."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Selezionati"
@@ -23937,100 +23703,6 @@ msgstr "Numero di facce triangolari"
msgid "Calculating, please wait..."
msgstr "Calcolo in corso, attendere..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -196,15 +196,6 @@ msgstr "完了"
msgid "Support Generated"
msgstr "生成されたサポート"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "ギズモ-面に配置"
@@ -291,15 +282,6 @@ msgstr "フィラメント %1%でペイントします"
msgid "To:"
msgstr "先:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "ファジースキンのペイント"
@@ -321,15 +303,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "このオブジェクトのペイントファジースキンを有効にする"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "移動"
@@ -715,15 +688,6 @@ msgstr "ラインでカット"
msgid "Delete connector"
msgstr "コネクター削除"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "メッシュ名"
@@ -1595,12 +1559,6 @@ msgstr "平行距離:"
msgid "Flip by Face 2"
msgstr "面2で反転"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "組立てる"
@@ -1638,12 +1596,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "面と面の組み立て"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1917,20 +1869,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3203,45 +3141,6 @@ msgstr "最高温度は次の値を超えることはできません "
msgid "The minmum temperature should not be less than "
msgstr "最低温度は次の値を下回ることはできません "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "すべて"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "すべて選択解除"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "詳細設定"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3514,9 +3413,6 @@ msgstr "フォントに指定されたテキストの形状がありません。
msgid "There is no valid surface for text projection."
msgstr "テキスト投影に有効な面がありません。"
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "初期レイヤー最適化のための熱プリコンディショニング"
@@ -8591,6 +8487,9 @@ msgstr "ユーザーフィラメントプリセットをグループ化"
msgid "Group user filament presets based on selection"
msgstr "選択に基づいてユーザーフィラメントプリセットをグループ化"
msgid "All"
msgstr "すべて"
msgid "By type"
msgstr "タイプ別"
@@ -8962,14 +8861,6 @@ msgstr "ネットワークプラグインをダウンロード"
msgid "Associate files to OrcaSlicer"
msgstr "ファイルをOrca Slicerに関連付ける"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr ".3mfファイルをOrca Slicerに関連付けます。"
@@ -9806,9 +9697,6 @@ msgstr ""
"ファイルアップロードがタイムアウトしました。ファームウェアバージョンがこの操"
"作をサポートしているか、プリンターが正常に動作しているか確認してください。"
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "スライス完了"
@@ -10247,9 +10135,6 @@ msgstr "外部および内部ブリッジの速度を設定"
msgid "Travel speed"
msgstr "移動速度"
msgid "Junction Deviation"
msgstr "接合偏差"
msgid "Jerk(XY)"
msgstr "ジャーク(XY)"
@@ -11096,6 +10981,9 @@ msgstr ""
"プリンターのフィラメントに基づいてプロジェクトフィラメントリストを順次置き換"
"えます。未使用のプリンターフィラメントはリストの末尾に自動的に追加されます。"
msgid "Advanced settings"
msgstr "詳細設定"
msgid "Add unused AMS filaments to filaments list."
msgstr "未使用のAMSフィラメントをフィラメントリストに追加します。"
@@ -11580,23 +11468,12 @@ msgstr "新しいプラグイン (%s) が発見しました、インストール
msgid "New version of Orca Slicer"
msgstr "新バージョン"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "このバージョンをスキップ"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "確認してノズルを更新"
@@ -11708,9 +11585,6 @@ msgstr "カッティングモジュール"
msgid "Auto Fire Extinguishing System"
msgstr "自動消火システム"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "ファームウェアを更新"
@@ -12805,7 +12679,7 @@ msgid "External bridge density"
msgstr "外部ブリッジ密度"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12819,14 +12693,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "内部ブリッジ密度"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12861,9 +12739,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -14667,6 +14547,9 @@ msgstr ""
msgid "Default jerk."
msgstr "デフォルトジャーク。"
msgid "Junction Deviation"
msgstr "接合偏差"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -20067,6 +19950,9 @@ msgstr "プリンタープリセット"
msgid "Filament Preset Template"
msgstr "フィラメントプリセットテンプレート"
msgid "Deselect All"
msgstr "すべて選択解除"
msgid "Process Preset Template"
msgstr "プロセスプリセットテンプレート"
@@ -20547,21 +20433,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "印刷ホストのタイプが一致しません: %s"
@@ -21259,105 +21133,6 @@ msgstr "シリアル経由でFlashforgeに接続できませんでした"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "指定された状態が正しくありません。"
@@ -21409,12 +21184,6 @@ msgstr "ブリム"
msgid "Please select single object."
msgstr "単一のオブジェクトを選択してください"
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "ズームアウト"
@@ -21424,9 +21193,6 @@ msgstr "ズームイン"
msgid "Load skipping objects information failed. Please try again."
msgstr "スキップオブジェクト情報のロードに失敗しました。再試行してください。"
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d 選択済み"
@@ -21579,100 +21345,6 @@ msgstr "三角面の数"
msgid "Calculating, please wait..."
msgstr "計算中、お待ちください..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-06-02 17:12+0900\n"
"Last-Translator: crwusiz <crwusiz@gmail.com>\n"
"Language-Team: \n"
@@ -198,15 +198,6 @@ msgstr "완료"
msgid "Support Generated"
msgstr "서포트 생성됨"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "변형도구 - 면에 배치"
@@ -294,15 +285,6 @@ msgstr "칠하기에 사용한 필라멘트 %1%"
msgid "To:"
msgstr "대상:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "퍼지 스킨 칠하기"
@@ -323,15 +305,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "이 객체의 칠한 퍼지 스킨 활성화"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "이동"
@@ -718,15 +691,6 @@ msgstr "라인별로 자르기"
msgid "Delete connector"
msgstr "커넥터 삭제"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "메시 이름"
@@ -1591,12 +1555,6 @@ msgstr "평행 거리:"
msgid "Flip by Face 2"
msgstr "면 2로 뒤집기"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "병합"
@@ -1633,12 +1591,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "면과 면 조립"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1914,20 +1866,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3192,45 +3130,6 @@ msgstr "최대 온도는 다음 값을 초과할 수 없습니다 "
msgid "The minmum temperature should not be less than "
msgstr "최소 온도는 다음 값보다 낮아서는 안 됩니다 "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "모두"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "모두 선택 해제"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "고급 설정"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3500,9 +3399,6 @@ msgstr "글꼴에 지정된 텍스트의 형태가 없습니다."
msgid "There is no valid surface for text projection."
msgstr "텍스트 프로젝션에 유효한 표면이 없습니다."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "첫 번째 레이어 최적화를 위한 열 사전 조건"
@@ -8532,6 +8428,9 @@ msgstr ""
msgid "Group user filament presets based on selection"
msgstr ""
msgid "All"
msgstr "모두"
msgid "By type"
msgstr ""
@@ -8878,14 +8777,6 @@ msgstr ""
msgid "Associate files to OrcaSlicer"
msgstr "파일을 OrcaSlicer에 연결"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr ".3mf 파일을 OrcaSlicer에 연결"
@@ -9709,9 +9600,6 @@ msgstr ""
"파일 업로드 시간이 초과되었습니다. 펌웨어 버전이 이 작업을 지원하는지 확인하"
"거나 프린터가 제대로 작동하는지 확인하세요."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "슬라이스 완료."
@@ -10134,9 +10022,6 @@ msgstr "외부 및 내부 브릿지 속도 설정"
msgid "Travel speed"
msgstr "이동 속도"
msgid "Junction Deviation"
msgstr ""
msgid "Jerk(XY)"
msgstr "저크(XY)"
@@ -10989,6 +10874,9 @@ msgstr ""
"프린터 필라멘트를 기준으로 프로젝트 필라멘트 목록을 순차적으로 교체합니다. 사"
"용하지 않는 프린터 필라멘트는 자동으로 목록 끝에 추가됩니다."
msgid "Advanced settings"
msgstr "고급 설정"
msgid "Add unused AMS filaments to filaments list."
msgstr "미사용 AMS 필라멘트를 필라멘트 목록에 추가하기."
@@ -11476,23 +11364,12 @@ msgstr "새 네트워크 플러그인(%s)을 사용할 수 있습니다. 설치
msgid "New version of Orca Slicer"
msgstr "Orca Slicer의 새 버전"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "이 버전 건너뛰기"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "노즐 확인 및 업데이트"
@@ -11605,9 +11482,6 @@ msgstr "커팅 모듈"
msgid "Auto Fire Extinguishing System"
msgstr "자동 화재 진압 시스템"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "펌웨어 업데이트"
@@ -12757,7 +12631,7 @@ msgid "External bridge density"
msgstr "외부 브릿지 밀도"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12771,14 +12645,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "내부 브릿지 밀도"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12813,9 +12691,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -14865,6 +14745,9 @@ msgstr "Klipper의 max_accel_to_decel은 가속도의 %%로 조정됩니다"
msgid "Default jerk."
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -20595,6 +20478,9 @@ msgstr "프린터 사전 설정"
msgid "Filament Preset Template"
msgstr "필라멘트 사전 설정 템플릿"
msgid "Deselect All"
msgstr "모두 선택 해제"
msgid "Process Preset Template"
msgstr "프로세스 사전 설정 템플릿"
@@ -21078,21 +20964,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "일치하지 않는 출력 호스트 유형: %s"
@@ -21836,105 +21710,6 @@ msgstr ""
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "제공된 상태가 올바르지 않습니다."
@@ -21988,12 +21763,6 @@ msgstr "브림 귀"
msgid "Please select single object."
msgstr "단일 객체를 선택하세요."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "축소"
@@ -22003,9 +21772,6 @@ msgstr "확대"
msgid "Load skipping objects information failed. Please try again."
msgstr "건너뛰는 개체 정보를 로드하지 못했습니다. 다시 시도해 주세요."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d 선택됨"
@@ -22152,100 +21918,6 @@ msgstr "삼각형 패싯 수"
msgid "Calculating, please wait..."
msgstr "계산 중, 잠시만 기다려주세요..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -48,12 +48,9 @@ src/slic3r/GUI/DeviceTab/uiAmsHumidityPopup.cpp
src/slic3r/GUI/DeviceTab/uiDeviceUpdateVersion.h
src/slic3r/GUI/DeviceTab/uiDeviceUpdateVersion.cpp
src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.cpp
src/slic3r/GUI/Gizmos/GLGizmoFdmSupports.hpp
src/slic3r/GUI/Gizmos/GLGizmoFlatten.cpp
src/slic3r/GUI/Gizmos/GLGizmoMmuSegmentation.cpp
src/slic3r/GUI/Gizmos/GLGizmoMmuSegmentation.hpp
src/slic3r/GUI/Gizmos/GLGizmoFuzzySkin.cpp
src/slic3r/GUI/Gizmos/GLGizmoFuzzySkin.hpp
src/slic3r/GUI/Gizmos/GLGizmoMove.cpp
src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp
src/slic3r/GUI/Gizmos/GLGizmoScale.cpp
@@ -61,7 +58,6 @@ src/slic3r/GUI/Gizmos/GLGizmosManager.cpp
src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp
src/slic3r/GUI/Gizmos/GizmoObjectManipulation.cpp
src/slic3r/GUI/Gizmos/GLGizmoCut.cpp
src/slic3r/GUI/Gizmos/GLGizmoCut.hpp
src/slic3r/GUI/Gizmos/GLGizmoSimplify.cpp
src/slic3r/GUI/Gizmos/GLGizmoFaceDetector.cpp
src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp
@@ -71,9 +67,7 @@ src/slic3r/GUI/Gizmos/GLGizmoText.hpp
src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp
src/slic3r/GUI/Gizmos/GLGizmoSVG.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeasure.hpp
src/slic3r/GUI/Gizmos/GLGizmoAssembly.cpp
src/slic3r/GUI/Gizmos/GLGizmoAssembly.hpp
src/slic3r/GUI/GUI.cpp
src/slic3r/GUI/GUI_App.cpp
src/slic3r/GUI/GUI_AuxiliaryList.cpp
@@ -95,8 +89,6 @@ src/slic3r/GUI/Widgets/AMSControl.cpp
src/slic3r/GUI/Widgets/FanControl.cpp
src/slic3r/GUI/Widgets/FilamentLoad.cpp
src/slic3r/GUI/Widgets/TempInput.cpp
src/slic3r/GUI/Widgets/CheckList.cpp
src/slic3r/GUI/Widgets/SwitchButton.cpp
src/slic3r/GUI/ImGuiWrapper.cpp
src/slic3r/GUI/Jobs/ArrangeJob.cpp
src/slic3r/GUI/Jobs/OrientJob.cpp
@@ -106,7 +98,6 @@ src/slic3r/GUI/Jobs/BindJob.cpp
src/slic3r/GUI/Jobs/PrintJob.cpp
src/slic3r/GUI/Jobs/SendJob.cpp
src/slic3r/GUI/Jobs/EmbossJob.cpp
src/slic3r/GUI/Jobs/PlaterWorker.hpp
src/slic3r/GUI/ThermalPreconditioningDialog.cpp
src/slic3r/GUI/ThermalPreconditioningDialog.hpp
src/slic3r/GUI/Jobs/SLAImportJob.cpp
@@ -246,12 +237,8 @@ src/slic3r/GUI/FilamentMapPanel.cpp
src/slic3r/Utils/Obico.cpp
src/slic3r/Utils/SimplyPrint.cpp
src/slic3r/Utils/Flashforge.cpp
src/slic3r/Utils/ElegooLink.cpp
src/slic3r/Utils/CrealityPrint.cpp
src/slic3r/Utils/PrintHost.cpp
src/slic3r/GUI/Jobs/OAuthJob.cpp
src/slic3r/GUI/Gizmos/GLGizmoBrimEars.cpp
src/slic3r/GUI/Gizmos/GLGizmoBrimEars.hpp
src/slic3r/GUI/PartSkipDialog.cpp
src/slic3r/GUI/PartSkipDialog.hpp
src/slic3r/GUI/SkipPartCanvas.cpp
@@ -263,12 +250,4 @@ src/slic3r/GUI/NetworkPluginDialog.cpp
src/slic3r/GUI/RammingChart.cpp
src/slic3r/GUI/StepMeshDialog.cpp
src/slic3r/GUI/FilamentPickerDialog.hpp
src/slic3r/GUI/PresetBundleDialog.cpp
src/slic3r/GUI/ExportPresetBundleDialog.cpp
src/slic3r/GUI/DesktopIntegrationDialog.cpp
src/slic3r/GUI/Downloader.cpp
src/slic3r/GUI/DownloaderFileGet.cpp
src/slic3r/GUI/FileArchiveDialog.cpp
src/slic3r/GUI/PrinterCloudAuthDialog.cpp
src/slic3r/GUI/PrinterWebViewHandler.cpp
src/libslic3r/PresetBundle.cpp

View File

@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-10-25 23:01+0300\n"
"Last-Translator: Gintaras Kučinskas <sharanchius@gmail.com>\n"
"Language-Team: \n"
@@ -197,15 +197,6 @@ msgstr "Atlikta"
msgid "Support Generated"
msgstr "Atramos sugeneruotos"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Patalpinti ant paviršiaus"
@@ -293,15 +284,6 @@ msgstr "Piešta naudojant: Gija %1%"
msgid "To:"
msgstr "To:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Piešti grublėtą paviršių"
@@ -322,15 +304,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Enable painted fuzzy skin for this object"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Perkelti"
@@ -722,15 +695,6 @@ msgstr "Pjovimas pagal liniją"
msgid "Delete connector"
msgstr "Ištrinti jungtį"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Figūros pavadinimas"
@@ -1600,12 +1564,6 @@ msgstr "Lygiagretus atstumas:"
msgid "Flip by Face 2"
msgstr "Apversti pagal paviršių 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Surinkti"
@@ -1642,12 +1600,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Face and face assembly"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1934,20 +1886,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3246,45 +3184,6 @@ msgstr "The maximum temperature cannot exceed "
msgid "The minmum temperature should not be less than "
msgstr "The minmum temperature should not be less than "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Visi"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Atšaukti visus"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3565,9 +3464,6 @@ msgstr "Font doesn't have any shape for given text."
msgid "There is no valid surface for text projection."
msgstr "There is no valid surface for text projection."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Thermal Preconditioning for first layer optimization"
@@ -8745,6 +8641,9 @@ msgstr "Group user filament presets"
msgid "Group user filament presets based on selection"
msgstr "Group user filament presets based on selection"
msgid "All"
msgstr "Visi"
msgid "By type"
msgstr "By type"
@@ -9119,14 +9018,6 @@ msgstr "Download Network Plug-in"
msgid "Associate files to OrcaSlicer"
msgstr "Susieti failus su Orca Slicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Susieti .3mf failus su Orca Slicer"
@@ -9986,9 +9877,6 @@ msgstr ""
"File upload timed out. Please check if the firmware version supports this "
"operation or verify if the printer is functioning properly."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Sluoksniavimas baigtas."
@@ -10450,9 +10338,6 @@ msgstr "Vidinių ir išorinių tiltų greitis"
msgid "Travel speed"
msgstr "Judėjimo greitis"
msgid "Junction Deviation"
msgstr "Sujungimo nuokrypis"
msgid "Jerk(XY)"
msgstr "Pagreitis (XY)"
@@ -11337,6 +11222,9 @@ msgstr ""
"And unused printer filaments will be automatically added to the end of the "
"list."
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Add unused AMS filaments to filaments list."
msgstr "Add unused AMS filaments to filaments list."
@@ -11839,23 +11727,12 @@ msgstr "Yra naujas tinklo papildinys(%s), ar norite jį įdiegti?"
msgid "New version of Orca Slicer"
msgstr "Nauja \"Orca Slicer\" versija"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Praleisti šią versiją"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Patvirtinti ir atnaujinti purkštuką"
@@ -11969,9 +11846,6 @@ msgstr "Pjovimo modulis"
msgid "Auto Fire Extinguishing System"
msgstr "Auto Fire Extinguishing System"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Atnaujinti programinę įrangą"
@@ -13205,7 +13079,7 @@ msgid "External bridge density"
msgstr "Išorinio tilto tankis"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13219,14 +13093,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Vidinių tiltų tankis"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13261,9 +13139,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15470,6 +15350,9 @@ msgstr "\"Klipper\" max_accel_to_decel bus pakoreguotas pagal šį pagreičio %%
msgid "Default jerk."
msgstr "Numatytasis trūkčiojimas."
msgid "Junction Deviation"
msgstr "Sujungimo nuokrypis"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21610,6 +21493,9 @@ msgstr "Spausdintuvo nustatymai"
msgid "Filament Preset Template"
msgstr "Gijos nustatymų šablonas"
msgid "Deselect All"
msgstr "Atšaukti visus"
msgid "Process Preset Template"
msgstr "Proceso nustatymų šablonas"
@@ -22126,21 +22012,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Neatitinka tinklinio spausdintuvo tipas: %s"
@@ -22942,105 +22816,6 @@ msgstr "Nepavyko prisijungti prie „Flashforge“ per nuoseklųjį prievadą"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Pateikta būsena neteisinga."
@@ -23093,12 +22868,6 @@ msgstr "Krašto \"ausys\""
msgid "Please select single object."
msgstr "Pasirinkite vieną objektą."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Zoom Out"
@@ -23108,9 +22877,6 @@ msgstr "Zoom In"
msgid "Load skipping objects information failed. Please try again."
msgstr "Load skipping objects information failed. Please try again."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Selected"
@@ -23262,100 +23028,6 @@ msgstr "Number of triangular facets"
msgid "Calculating, please wait..."
msgstr "Calculating, please wait..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: \n"
"Language-Team: \n"
@@ -191,15 +191,6 @@ msgstr "Klaar"
msgid "Support Generated"
msgstr "Ondersteuning gegenereerd"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Plaats op vlak"
@@ -288,15 +279,6 @@ msgstr "Geschilderd met filament %1%"
msgid "To:"
msgstr "Naar:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Paint-on fuzzy skin"
@@ -317,15 +299,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Enable painted fuzzy skin for this object"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Verplaats"
@@ -715,15 +688,6 @@ msgstr "Cut by line"
msgid "Delete connector"
msgstr "Delete connector"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Meshnaam"
@@ -1593,12 +1557,6 @@ msgstr "Parallel distance:"
msgid "Flip by Face 2"
msgstr "Flip by Face 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Monteren"
@@ -1635,12 +1593,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Face and face assembly"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1922,20 +1874,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3234,45 +3172,6 @@ msgstr "The maximum temperature cannot exceed "
msgid "The minmum temperature should not be less than "
msgstr "The minmum temperature should not be less than "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Alles"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Alles deselecteren"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3549,9 +3448,6 @@ msgstr "Font doesn't have any shape for given text."
msgid "There is no valid surface for text projection."
msgstr "There is no valid surface for text projection."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Thermal Preconditioning for first layer optimization"
@@ -8752,6 +8648,9 @@ msgstr "Group user filament presets"
msgid "Group user filament presets based on selection"
msgstr "Group user filament presets based on selection"
msgid "All"
msgstr "Alles"
msgid "By type"
msgstr "By type"
@@ -9126,14 +9025,6 @@ msgstr "Download Network Plug-in"
msgid "Associate files to OrcaSlicer"
msgstr "Koppel bestanden aan OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Koppel .3mf-bestanden aan OrcaSlicer"
@@ -9993,9 +9884,6 @@ msgstr ""
"File upload timed out. Please check if the firmware version supports this "
"operation or verify if the printer is functioning properly."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Slice gelukt."
@@ -10450,9 +10338,6 @@ msgstr "Snelheid instellen voor externe en interne bruggen"
msgid "Travel speed"
msgstr "Verplaatsing-sneleheid"
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid "Jerk(XY)"
msgstr "Jerk(XY)"
@@ -11335,6 +11220,9 @@ msgstr ""
"And unused printer filaments will be automatically added to the end of the "
"list."
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Add unused AMS filaments to filaments list."
msgstr "Add unused AMS filaments to filaments list."
@@ -11841,23 +11729,12 @@ msgstr ""
msgid "New version of Orca Slicer"
msgstr "Nieuwe versie van Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Deze versie overslaan"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Bevestig en update het mondstuk"
@@ -11971,9 +11848,6 @@ msgstr "Cutting Module"
msgid "Auto Fire Extinguishing System"
msgstr "Auto Fire Extinguishing System"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Firmware bijwerken"
@@ -13209,7 +13083,7 @@ msgid "External bridge density"
msgstr "External bridge density"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13223,14 +13097,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Internal bridge density"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13265,9 +13143,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15473,6 +15353,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Default jerk."
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21607,6 +21490,9 @@ msgstr "Vooraf ingestelde printer"
msgid "Filament Preset Template"
msgstr "Filament vooraf ingestelde sjabloon"
msgid "Deselect All"
msgstr "Alles deselecteren"
msgid "Process Preset Template"
msgstr "Vooraf ingesteld proces sjabloon"
@@ -22113,21 +21999,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Verkeerd type afdrukhost: %s"
@@ -22918,105 +22792,6 @@ msgstr "Could not connect to Flashforge via serial"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "The provided state is not correct."
@@ -23069,12 +22844,6 @@ msgstr "Rand Oren"
msgid "Please select single object."
msgstr "Selecteer een enkel object."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Uitzoomen"
@@ -23084,9 +22853,6 @@ msgstr "Inzoomen"
msgid "Load skipping objects information failed. Please try again."
msgstr "Load skipping objects information failed. Please try again."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d geselecteerd"
@@ -23238,100 +23004,6 @@ msgstr "Number of triangular facets"
msgid "Calculating, please wait..."
msgstr "Calculating, please wait..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: OrcaSlicer 2.3.0-rc\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: \n"
"Last-Translator: Krzysztof Morga <<tlumaczeniebs@gmail.com>>\n"
"Language-Team: \n"
@@ -199,15 +199,6 @@ msgstr "Gotowe"
msgid "Support Generated"
msgstr "Wygenerowana podpora"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Uchwyt-Połóż na Płaszczyźnie"
@@ -296,15 +287,6 @@ msgstr "Pomalowane za pomocą: Filament %1%"
msgid "To:"
msgstr "Do:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Malowanie Fuzzy Skin"
@@ -324,15 +306,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr ""
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Przesuń"
@@ -726,15 +699,6 @@ msgstr "Cięcie linią"
msgid "Delete connector"
msgstr "Usuń łącznik"
msgid "Entering Cut gizmo"
msgstr "Otwieranie uchwytu przecinania"
msgid "Leaving Cut gizmo"
msgstr "Zamykanie uchwytu wytłaczania"
msgid "Cut gizmo editing"
msgstr "Edytowanie uchwytów przecinania"
msgid "Mesh name"
msgstr "Nazwa siatki"
@@ -1607,12 +1571,6 @@ msgstr "Odległość między równoległymi krawędziami:"
msgid "Flip by Face 2"
msgstr "Obróć względem 2 powierzchni"
msgid "Entering Measure gizmo"
msgstr "Otwieranie uchwytu pomiaru"
msgid "Leaving Measure gizmo"
msgstr "Zamykanie uchwytu wytłaczania"
msgid "Assemble"
msgstr "Złożenie"
@@ -1651,12 +1609,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Montaż - powierzchnia do powierzchni"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1940,20 +1892,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3230,45 +3168,6 @@ msgstr "Maksymalna temperatura nie może przekroczyć "
msgid "The minmum temperature should not be less than "
msgstr "Minimalna temperatura nie powinna być mniejsza niż "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Wszystkie"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Odznacz wszystko"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Ustawienia zaawansowane"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3534,9 +3433,6 @@ msgstr "Czcionka nie ma żadnego kształtu dla danego tekstu."
msgid "There is no valid surface for text projection."
msgstr "Nie ma prawidłowej powierzchni do rzutowania tekstu."
msgid "An unexpected error occurred"
msgstr "Wystąpił nieoczekiwany błąd"
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Wyrównywanie termiczne w celu optymalizacji pierwszej warstwy"
@@ -8703,6 +8599,9 @@ msgstr ""
msgid "Group user filament presets based on selection"
msgstr ""
msgid "All"
msgstr "Wszystkie"
msgid "By type"
msgstr ""
@@ -9052,14 +8951,6 @@ msgstr ""
msgid "Associate files to OrcaSlicer"
msgstr "Skojarzenia plików z OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Skojarzenie plików 3MF"
@@ -9911,9 +9802,6 @@ msgstr ""
"Przekroczono limit czasu wgrywania pliku. Sprawdź czy Twoja wersja "
"oprogramowania obsługuje tą operację oraz czy drukarka działa poprawnie."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Zakończono cięcie modelu."
@@ -10348,9 +10236,6 @@ msgstr "Ustaw szybkość dla zewnętrznych i wewnętrznych mostów"
msgid "Travel speed"
msgstr "Szybkość przemieszczania"
msgid "Junction Deviation"
msgstr ""
msgid "Jerk(XY)"
msgstr "Jerk (XY)"
@@ -11234,6 +11119,9 @@ msgstr ""
"drukarki. Nieużywane filamenty drukarki zostaną automatycznie dodane na "
"koniec listy."
msgid "Advanced settings"
msgstr "Ustawienia zaawansowane"
msgid "Add unused AMS filaments to filaments list."
msgstr "Dodaj nieużywane filamenty AMS do listy filamentów."
@@ -11731,23 +11619,12 @@ msgstr "Dostępna jest nowa wtyczka sieciowa (%s). Czy zainstalować ją?"
msgid "New version of Orca Slicer"
msgstr "Nowa wersja Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Pomiń tę wersję"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Potwierdź i zaktualizuj dyszę"
@@ -11861,9 +11738,6 @@ msgstr "Moduł tnący"
msgid "Auto Fire Extinguishing System"
msgstr "Automatyczny system gaśniczy"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Aktualizuj oprogramowanie"
@@ -13085,7 +12959,7 @@ msgid "External bridge density"
msgstr "Gęstość zewnętrznych mostów"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13099,14 +12973,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Gęstość wewnętrznych mostów"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13141,9 +13019,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15321,6 +15201,9 @@ msgstr ""
msgid "Default jerk."
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21313,6 +21196,9 @@ msgstr "Profil drukarki"
msgid "Filament Preset Template"
msgstr "Opracuj profil filamentu"
msgid "Deselect All"
msgstr "Odznacz wszystko"
msgid "Process Preset Template"
msgstr "Opracuj profil procesu"
@@ -21818,21 +21704,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Niepasujący typ hosta drukowania: %s"
@@ -22622,105 +22496,6 @@ msgstr ""
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Podany stan nie jest właściwy"
@@ -22774,12 +22549,6 @@ msgstr "Uszy brim"
msgid "Please select single object."
msgstr "Proszę wybrać pojedynczy obiekt."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Pomniejsz"
@@ -22791,9 +22560,6 @@ msgstr ""
"Nie udało się pobrać informacji o pomijanych obiektach. Proszę spróbować "
"ponownie."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d wybrano"
@@ -22941,112 +22707,6 @@ msgstr "Liczba trójkątnych faset"
msgid "Calculating, please wait..."
msgstr "Obliczanie, proszę czekać..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
"Integracja z pulpitem nie powiodła się - boost::filesystem::canonical nie "
"zwrócił ścieżki do appimage."
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
"Integracji z pulpitem nie powiodła się - nie znaleziono pliku wykonywalnego."
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
"Integracja z pulpitem nie powiodła się, ponieważ nie znaleziono katalogu "
"aplikacji."
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
"Integracji z pulpitem nie powiodła się - nie można utworzyć pliku pulpitu "
"Gcodeviewer. Plik pulpitu OrcaSlicer został prawdopodobnie utworzony "
"pomyślnie."
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr "Integracja z pulpitem"
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
"Integracja z pulpitem ustawia ten plik binarny jako możliwy do wyszukania "
"przez system.\n"
"\n"
"Naciśnij \"Wykonaj\", aby kontynuować."
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."
@@ -26415,6 +26075,46 @@ msgstr ""
#~ msgid "Configuration &Wizard"
#~ msgstr "Asystent Ko&nfiguracji"
#~ msgid ""
#~ "Performing desktop integration failed - boost::filesystem::canonical did "
#~ "not return appimage path."
#~ msgstr ""
#~ "Integracja z pulpitem nie powiodła się - boost::filesystem::canonical nie "
#~ "zwrócił ścieżki do appimage."
#~ msgid "Performing desktop integration failed - Could not find executable."
#~ msgstr ""
#~ "Integracji z pulpitem nie powiodła się - nie znaleziono pliku "
#~ "wykonywalnego."
#~ msgid ""
#~ "Performing desktop integration failed because the application directory "
#~ "was not found."
#~ msgstr ""
#~ "Integracja z pulpitem nie powiodła się, ponieważ nie znaleziono katalogu "
#~ "aplikacji."
#~ msgid ""
#~ "Performing desktop integration failed - could not create Gcodeviewer "
#~ "desktop file. OrcaSlicer desktop file was probably created successfully."
#~ msgstr ""
#~ "Integracji z pulpitem nie powiodła się - nie można utworzyć pliku pulpitu "
#~ "Gcodeviewer. Plik pulpitu OrcaSlicer został prawdopodobnie utworzony "
#~ "pomyślnie."
#~ msgid "Desktop Integration"
#~ msgstr "Integracja z pulpitem"
#~ msgid ""
#~ "Desktop Integration sets this binary to be searchable by the system.\n"
#~ "\n"
#~ "Press \"Perform\" to proceed."
#~ msgstr ""
#~ "Integracja z pulpitem ustawia ten plik binarny jako możliwy do wyszukania "
#~ "przez system.\n"
#~ "\n"
#~ "Naciśnij \"Wykonaj\", aby kontynuować."
#~ msgid "3D Models"
#~ msgstr "Modele 3D"
@@ -26493,6 +26193,9 @@ msgstr ""
#~ msgid "The maximum temperature cannot exceed"
#~ msgstr "Maksymalna temperatura nie może przekroczyć"
#~ msgid "An unexpected error occurred"
#~ msgstr "Wystąpił nieoczekiwany błąd"
#~ msgid "Best surface quality"
#~ msgstr "Najlepsza jakość powierzchni"
@@ -26573,6 +26276,15 @@ msgstr ""
#~ "Nieprawidłowy stan.\n"
#~ "Żadna część nie została wybrana do zachowania po cięciu"
#~ msgid "Entering Cut gizmo"
#~ msgstr "Otwieranie uchwytu przecinania"
#~ msgid "Leaving Cut gizmo"
#~ msgstr "Zamykanie uchwytu wytłaczania"
#~ msgid "Cut gizmo editing"
#~ msgstr "Edytowanie uchwytów przecinania"
#~ msgid "Hollow this object"
#~ msgstr "Wydrąż ten model"
@@ -26606,6 +26318,12 @@ msgstr ""
#~ msgid "Hollow and drill"
#~ msgstr "Drążenie i wiercenie"
#~ msgid "Entering Measure gizmo"
#~ msgstr "Otwieranie uchwytu pomiaru"
#~ msgid "Leaving Measure gizmo"
#~ msgstr "Zamykanie uchwytu wytłaczania"
#~ msgid "Measure gizmo editing"
#~ msgstr "Edycja uchwytów pomiaru"

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2026-03-22 17:15-0300\n"
"Last-Translator: Alexandre Folle de Menezes\n"
"Language-Team: Portuguese, Brazilian\n"
@@ -203,15 +203,6 @@ msgstr "Concluído"
msgid "Support Generated"
msgstr "Suporte Gerado"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Posicionar na face"
@@ -300,15 +291,6 @@ msgstr "Pintado usando: Filamento %1%"
msgid "To:"
msgstr "Para:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Textura difusa pintada"
@@ -330,15 +312,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Ativar textura difusa pintada para este objeto"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Mover"
@@ -728,15 +701,6 @@ msgstr "Corte por linha"
msgid "Delete connector"
msgstr "Apagar conector"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Nome da malha"
@@ -1612,12 +1576,6 @@ msgstr "Distância paralela:"
msgid "Flip by Face 2"
msgstr "Virar pela Face 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Montar"
@@ -1656,12 +1614,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Montagem face a face"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1946,20 +1898,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3257,45 +3195,6 @@ msgstr "A temperatura máxima não pode exceder "
msgid "The minmum temperature should not be less than "
msgstr "A temperatura mínima não pode ser menor do que "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Todos"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Desselecionar Tudo"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Definições avançadas"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3579,9 +3478,6 @@ msgstr "A fonte não possui nenhuma forma para o texto fornecido."
msgid "There is no valid surface for text projection."
msgstr "Não existe uma superfície válida para projeção de texto."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Pré-condicionamento térmico para otimização da primeira camada"
@@ -8846,6 +8742,9 @@ msgstr "Agrupar predefinições de filamento do usuário"
msgid "Group user filament presets based on selection"
msgstr "Agrupar predefinições de filamento do usuário com base na seleção"
msgid "All"
msgstr "Todos"
msgid "By type"
msgstr "Por tipo"
@@ -9245,14 +9144,6 @@ msgstr "Baixar Plug-in de Rede"
msgid "Associate files to OrcaSlicer"
msgstr "Associar arquivos ao OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Associar arquivos 3MF ao OrcaSlicer"
@@ -10129,9 +10020,6 @@ msgstr ""
"versão do firmware suporta esta operação ou verifique se a impressora está "
"funcionando corretamente."
msgid "Sending failed, please try again!"
msgstr "Falha no envio, tente novamente!"
msgid "Slice ok."
msgstr "Fatiamento ok."
@@ -10596,9 +10484,6 @@ msgstr "Definir velocidade para pontes externas e internas"
msgid "Travel speed"
msgstr "Velocidade de deslocamento"
msgid "Junction Deviation"
msgstr "Desvio de Junção"
msgid "Jerk(XY)"
msgstr "Jerk(XY)"
@@ -11508,6 +11393,9 @@ msgstr ""
"filamentos da impressora. Os filamentos de impressora não utilizados serão "
"adicionados automaticamente ao final da lista."
msgid "Advanced settings"
msgstr "Definições avançadas"
msgid "Add unused AMS filaments to filaments list."
msgstr "Adicionar filamentos AMS não utilizados à lista de filamentos."
@@ -12015,23 +11903,12 @@ msgstr "Um novo plug-in de rede (%s) está disponível, deseja instalá-lo?"
msgid "New version of Orca Slicer"
msgstr "Nova versão do OrcaSlicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr "Verifique no GitHub"
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Pular esta versão"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Confirmar e Atualizar Bico"
@@ -12148,9 +12025,6 @@ msgstr "Módulo de Corte"
msgid "Auto Fire Extinguishing System"
msgstr "Sistema Automático de Extinção de Incêndio"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Atualizar firmware"
@@ -13410,7 +13284,7 @@ msgid "External bridge density"
msgstr "Densidade de ponte externa"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13424,14 +13298,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Densidade de ponte interna"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13466,9 +13344,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15738,6 +15618,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Jerk padrão."
msgid "Junction Deviation"
msgstr "Desvio de Junção"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -22048,6 +21931,9 @@ msgstr "Predefinição de Impressora"
msgid "Filament Preset Template"
msgstr "Gabarito de Predefinição de Filamento"
msgid "Deselect All"
msgstr "Desselecionar Tudo"
msgid "Process Preset Template"
msgstr "Processar Gabarito de Predefinição"
@@ -22575,21 +22461,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Tipo de Host de Impressão incompatível: %s"
@@ -23407,105 +23281,6 @@ msgstr "Não foi possível conectar via serial com a Flashforge"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "O estado fornecido não está correto."
@@ -23560,12 +23335,6 @@ msgstr "Orelhas da Borda"
msgid "Please select single object."
msgstr "Por favor selecione um único objeto."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Afastar Zoom"
@@ -23576,9 +23345,6 @@ msgid "Load skipping objects information failed. Please try again."
msgstr ""
"Falha ao carregar ignorando as informações dos objetos. Tente novamente."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Selecionados"
@@ -23730,100 +23496,6 @@ msgstr "Numero de facetas triangulares"
msgid "Calculating, please wait..."
msgstr "Calculando, por favor aguarde…"
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."
@@ -25034,6 +24706,9 @@ msgstr ""
#~ "Verifique a rede e tente novamente. Se o problema persistir, você pode "
#~ "reiniciar ou atualizar a impressora."
#~ msgid "Sending failed, please try again!"
#~ msgstr "Falha no envio, tente novamente!"
#~ msgid "Open Wiki for more information >"
#~ msgstr "Abra o Wiki para mais informações >"

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: OrcaSlicer V2.3.2 beta2\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2026-02-25 13:38+0300\n"
"Last-Translator: Felix14_v2\n"
"Language-Team: Felix14_v2 (ДС/ТГ: @felix14_v2, почта: aleks111001@list.ru), "
@@ -214,15 +214,6 @@ msgstr "Готово"
msgid "Support Generated"
msgstr "Поддержка сгенерирована"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Гизмо: Поверхностью на стол"
@@ -311,15 +302,6 @@ msgstr "Окрашено с использованием прутка %1%"
msgid "To:"
msgstr "Заменить на:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Рисование нечёткой оболочки"
@@ -340,15 +322,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Включить нечёткую оболочку для модели"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Перемещение"
@@ -745,15 +718,6 @@ msgstr "Разрез по линии"
msgid "Delete connector"
msgstr "Удалить соединение"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Название"
@@ -1639,12 +1603,6 @@ msgstr "Расстояние между параллельными граням
msgid "Flip by Face 2"
msgstr "Перевернуть грань 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
# при выборе на столе
msgid "Assemble"
msgstr "Объединить в сборку"
@@ -1685,12 +1643,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Сборка по граням"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1985,20 +1937,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3325,47 +3263,6 @@ msgstr "Температура не должна превышать "
msgid "The minmum temperature should not be less than "
msgstr "Температура не должна быть ниже "
msgid "Type to filter..."
msgstr ""
# в Сохранение толщины вертикальной оболочки.
# было Везде, но из-за условия совместимости изменено.... как тогда быть?
msgid "All"
msgstr "Все"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Снять выбор со всего"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Расширенные настройки"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3654,9 +3551,6 @@ msgstr "В шрифте отсутствуют данные для создан
msgid "There is no valid surface for text projection."
msgstr "Невозможно спроецировать текст."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Преднагрев для оптимизации первого слоя"
@@ -8981,6 +8875,11 @@ msgstr ""
"Объединять пользовательские профили материалов в подгруппы по выбранному "
"критерию."
# в Сохранение толщины вертикальной оболочки.
# было Везде, но из-за условия совместимости изменено.... как тогда быть?
msgid "All"
msgstr "Все"
msgid "By type"
msgstr "Тип материала"
@@ -9361,14 +9260,6 @@ msgstr "Загрузить сетевой плагин"
msgid "Associate files to OrcaSlicer"
msgstr "Открытие файлов по умолчанию"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Открывать файлы 3MF в OrcaSlicer"
@@ -10233,9 +10124,6 @@ msgstr ""
"Превышено время ожидания отправки файла. Убедитесь, что прошивка "
"поддерживает эту функцию, и что принтер работает нормально."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Нарезка завершена."
@@ -10696,9 +10584,6 @@ msgstr ""
msgid "Travel speed"
msgstr "Ограничение скорости холостых перемещений"
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid "Jerk(XY)"
msgstr "Рывок (XY)"
@@ -11609,6 +11494,9 @@ msgstr ""
"принтера. Неиспользуемые филаменты принтера будут автоматически добавлены в "
"конец списка."
msgid "Advanced settings"
msgstr "Расширенные настройки"
msgid "Add unused AMS filaments to filaments list."
msgstr "Добавить незадействованные материалы из AMS в список"
@@ -12106,23 +11994,12 @@ msgstr "Доступен новый сетевой плагин (%s). Хотит
msgid "New version of Orca Slicer"
msgstr "Доступна новая версия Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr "Открыть на GitHub"
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Пропустить эту версию"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Подтвердить и обновить сопло"
@@ -12243,9 +12120,6 @@ msgstr "Модуль обрезки"
msgid "Auto Fire Extinguishing System"
msgstr "Автоматическая система пожаротушения"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Обновить прошивку"
@@ -13486,7 +13360,7 @@ msgid "External bridge density"
msgstr "Плотность внешних мостов"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13500,14 +13374,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Плотность внутренних мостов"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13542,9 +13420,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15889,6 +15769,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Рывок по умолчанию."
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -22428,6 +22311,9 @@ msgstr "Профиль принтера"
msgid "Filament Preset Template"
msgstr "Шаблон профиля материала"
msgid "Deselect All"
msgstr "Снять выбор со всего"
msgid "Process Preset Template"
msgstr "Шаблон профиля настроек"
@@ -22938,21 +22824,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Несоответствующий тип хоста печати: %s"
@@ -23751,105 +23625,6 @@ msgstr "Не удалось подключиться к Flashforge через п
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Указано неверное состояние."
@@ -23904,12 +23679,6 @@ msgstr "Кайма «мышиные уши»"
msgid "Please select single object."
msgstr "Пожалуйста, выберите один объект."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Отдалить"
@@ -23920,9 +23689,6 @@ msgid "Load skipping objects information failed. Please try again."
msgstr ""
"Не удалось загрузить информацию о пропуске объектов, попробуйте ещё раз."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "из %d выбрано"
@@ -24077,100 +23843,6 @@ msgstr "Количество треугольников"
msgid "Calculating, please wait..."
msgstr "Расчёт, подождите..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -188,15 +188,6 @@ msgstr "Klar"
msgid "Support Generated"
msgstr "Support skapad"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Place on Face"
@@ -285,15 +276,6 @@ msgstr "Färgläggning använder: Filament %1%"
msgid "To:"
msgstr "Till:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Paint-on fuzzy skin"
@@ -314,15 +296,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Enable painted fuzzy skin for this object"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Flytta"
@@ -710,15 +683,6 @@ msgstr "Cut by line"
msgid "Delete connector"
msgstr "Delete connector"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Mesh namn"
@@ -1584,12 +1548,6 @@ msgstr "Parallel distance:"
msgid "Flip by Face 2"
msgstr "Flip by Face 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Montera"
@@ -1626,12 +1584,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Face and face assembly"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl +"
@@ -1910,20 +1862,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3212,45 +3150,6 @@ msgstr "The maximum temperature cannot exceed "
msgid "The minmum temperature should not be less than "
msgstr "The minmum temperature should not be less than "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Allt"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Avmarkera alla"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3529,9 +3428,6 @@ msgstr "Font doesn't have any shape for given text."
msgid "There is no valid surface for text projection."
msgstr "There is no valid surface for text projection."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Thermal Preconditioning for first layer optimization"
@@ -8679,6 +8575,9 @@ msgstr "Group user filament presets"
msgid "Group user filament presets based on selection"
msgstr "Group user filament presets based on selection"
msgid "All"
msgstr "Allt"
msgid "By type"
msgstr "By type"
@@ -9050,14 +8949,6 @@ msgstr "Download Network Plug-in"
msgid "Associate files to OrcaSlicer"
msgstr "Associerade filer till Orca Slicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Associerade 3MF filer till Orca Slicer"
@@ -9900,9 +9791,6 @@ msgstr ""
"File upload timed out. Please check if the firmware version supports this "
"operation or verify if the printer is functioning properly."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Beredning klar."
@@ -10354,9 +10242,6 @@ msgstr "Set speed for external and internal bridges"
msgid "Travel speed"
msgstr "Förflyttnings hastighet"
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid "Jerk(XY)"
msgstr "Jerk(XY)"
@@ -11233,6 +11118,9 @@ msgstr ""
"And unused printer filaments will be automatically added to the end of the "
"list."
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Add unused AMS filaments to filaments list."
msgstr "Add unused AMS filaments to filaments list."
@@ -11731,23 +11619,12 @@ msgstr "En ny nätverksplugin (%s) är tillgänglig. Vill du installera den?"
msgid "New version of Orca Slicer"
msgstr "Ny version av Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Hoppa över denna version"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Bekräfta och uppdatera nozzeln"
@@ -11861,9 +11738,6 @@ msgstr "Cutting Module"
msgid "Auto Fire Extinguishing System"
msgstr "Auto Fire Extinguishing System"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Uppdatera programvara"
@@ -13069,7 +12943,7 @@ msgid "External bridge density"
msgstr "External bridge density"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13083,14 +12957,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Internal bridge density"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13125,9 +13003,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15318,6 +15198,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Default jerk."
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21407,6 +21290,9 @@ msgstr "Printer inställningar"
msgid "Filament Preset Template"
msgstr "Filament inställnings mall"
msgid "Deselect All"
msgstr "Avmarkera alla"
msgid "Process Preset Template"
msgstr "Mall för process inställning"
@@ -21911,21 +21797,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Felaktig typ av utskriftsvärd: %s"
@@ -22714,105 +22588,6 @@ msgstr "Could not connect to Flashforge via serial"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "The provided state is not correct."
@@ -22866,12 +22641,6 @@ msgstr "Brätte Öron"
msgid "Please select single object."
msgstr "Please select single object."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Zoom Out"
@@ -22881,9 +22650,6 @@ msgstr "Zoom In"
msgid "Load skipping objects information failed. Please try again."
msgstr "Load skipping objects information failed. Please try again."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Selected"
@@ -23035,100 +22801,6 @@ msgstr "Number of triangular facets"
msgid "Calculating, please wait..."
msgstr "Calculating, please wait..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2026-06-04 12:39+0700\n"
"Last-Translator: Icezaza\n"
"Language-Team: Thai\n"
@@ -193,15 +193,6 @@ msgstr "เสร็จแล้ว"
msgid "Support Generated"
msgstr "สร้างส่วนรองรับแล้ว"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Place บนหน้า"
@@ -289,15 +280,6 @@ msgstr "ทาสีโดยใช้: เส้นพลาสติก %1%"
msgid "To:"
msgstr "ถึง:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "ระบายผิวฟัซซี"
@@ -317,15 +299,6 @@ msgstr "คำเตือน: ผิวฟัซซีถูกปิดใช
msgid "Enable painted fuzzy skin for this object"
msgstr "เปิดใช้งานสกินฟัซซี่ที่ทาสีแล้วสำหรับวัตถุนี้"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "ย้าย"
@@ -711,15 +684,6 @@ msgstr "ตัดด้วยเส้น"
msgid "Delete connector"
msgstr "ลบตัวเชื่อมต่อ"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "ชื่อเมช"
@@ -1580,12 +1544,6 @@ msgstr "ระยะทางขนาน:"
msgid "Flip by Face 2"
msgstr "พลิกตามผิวหน้า 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "ประกอบ"
@@ -1622,12 +1580,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "การประกอบผิวหน้าและผิวหน้า"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1901,20 +1853,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3176,45 +3114,6 @@ msgstr "อุณหภูมิสูงสุดต้องไม่เกิ
msgid "The minmum temperature should not be less than "
msgstr "อุณหภูมิต่ำสุดไม่ควรต่ำกว่า"
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "ทั้งหมด"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "ยกเลิกการเลือกทั้งหมด"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "การตั้งค่าขั้นสูง"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3473,9 +3372,6 @@ msgstr "แบบอักษรไม่มีรูปร่างสำหร
msgid "There is no valid surface for text projection."
msgstr "ไม่มีพื้นผิวที่ถูกต้องสำหรับการฉายข้อความ"
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "การปรับสภาพล่วงหน้าด้วยความร้อนเพื่อการเพิ่มประสิทธิภาพชั้นแรก"
@@ -8483,6 +8379,9 @@ msgstr "การตั้งค่าเส้นพลาสติกผู้
msgid "Group user filament presets based on selection"
msgstr "ตั้งค่าเส้นพลาสติกผู้ใช้แบบกลุ่มตามการเลือก"
msgid "All"
msgstr "ทั้งหมด"
msgid "By type"
msgstr "ตามประเภท"
@@ -8856,14 +8755,6 @@ msgstr "ดาวน์โหลดปลั๊กอินเครือข่
msgid "Associate files to OrcaSlicer"
msgstr "เชื่อมโยงไฟล์กับ OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "เชื่อมโยงไฟล์ 3MF กับ OrcaSlicer"
@@ -9671,9 +9562,6 @@ msgstr ""
"การอัปโหลดไฟล์หมดเวลา โปรดตรวจสอบว่าเวอร์ชันเฟิร์มแวร์รองรับการทำงานนี้หรือไม่ "
"หรือตรวจสอบว่าเครื่องพิมพ์ทำงานอย่างถูกต้องหรือไม่"
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "ชิ้นตกลง"
@@ -10112,9 +10000,6 @@ msgstr "ตั้งค่าความเร็วสำหรับบริ
msgid "Travel speed"
msgstr "ความเร็วเดินหัวเปล่า"
msgid "Junction Deviation"
msgstr "ส่วนเบี่ยงเบนทางแยก"
msgid "Jerk(XY)"
msgstr "กระตุก(XY)"
@@ -10979,6 +10864,9 @@ msgstr ""
"แทนที่รายการเส้นพลาสติกของโครงการตามลำดับตามเส้นพลาสติกของเครื่องพิมพ์ "
"และเส้นพลาสติกเครื่องพิมพ์ที่ไม่ได้ใช้จะถูกเพิ่มเข้าที่ส่วนท้ายของรายการโดยอัตโนมัติ"
msgid "Advanced settings"
msgstr "การตั้งค่าขั้นสูง"
msgid "Add unused AMS filaments to filaments list."
msgstr "เพิ่มเส้นพลาสติก AMS ที่ไม่ได้ใช้ลงในรายการเส้นพลาสติก"
@@ -11468,23 +11356,12 @@ msgstr "มีปลั๊กอินเครือข่ายใหม่ (%
msgid "New version of Orca Slicer"
msgstr "Orca Slicer เวอร์ชันใหม่"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr "ตรวจสอบบน Github"
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "ข้ามเวอร์ชันนี้"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "ยืนยันและอัปเดตหัวฉีด"
@@ -11592,9 +11469,6 @@ msgstr "โมดูลการตัด"
msgid "Auto Fire Extinguishing System"
msgstr "ระบบดับเพลิงอัตโนมัติ"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "อัพเดตเฟิร์มแวร์"
@@ -12724,7 +12598,7 @@ msgid "External bridge density"
msgstr "ความหนาแน่นของสะพานภายนอก"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12738,14 +12612,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "ความหนาแน่นสะพานภายใน"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12780,9 +12658,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -14871,6 +14751,9 @@ msgstr "max_accel_to_decel ของ Klipper จะถูกปรับเป
msgid "Default jerk."
msgstr "กระตุกเริ่มต้น"
msgid "Junction Deviation"
msgstr "ส่วนเบี่ยงเบนทางแยก"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -20723,6 +20606,9 @@ msgstr "พรีเซ็ตเครื่องพิมพ์"
msgid "Filament Preset Template"
msgstr "เทมเพลตที่ตั้งไว้ล่วงหน้าของเส้นพลาสติก"
msgid "Deselect All"
msgstr "ยกเลิกการเลือกทั้งหมด"
msgid "Process Preset Template"
msgstr "ประมวลผลเทมเพลตที่กำหนดไว้ล่วงหน้า"
@@ -21200,21 +21086,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "ประเภทของโฮสต์การพิมพ์ไม่ตรงกัน: %s"
@@ -21960,105 +21834,6 @@ msgstr "ไม่สามารถเชื่อมต่อกับ Flashfor
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "สถานะที่ระบุไม่ถูกต้อง"
@@ -22109,12 +21884,6 @@ msgstr "หู ขอบยึดชิ้นงาน"
msgid "Please select single object."
msgstr "กรุณาเลือกวัตถุเดียว"
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "ซูมออก"
@@ -22124,9 +21893,6 @@ msgstr "ซูมเข้า"
msgid "Load skipping objects information failed. Please try again."
msgstr "โหลดข้อมูลวัตถุที่ข้ามล้มเหลว โปรดลองอีกครั้ง"
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d เลือกแล้ว"
@@ -22275,100 +22041,6 @@ msgstr "จำนวนด้านสามเหลี่ยม"
msgid "Calculating, please wait..."
msgstr "กำลังคำนวณ โปรดรอสักครู่..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2026-04-08 23:59+0300\n"
"Last-Translator: GlauTech\n"
"Language-Team: \n"
@@ -197,15 +197,6 @@ msgstr "Tamamlandı"
msgid "Support Generated"
msgstr "Destek Oluşturuldu"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-Yüzeye yerleştir"
@@ -293,15 +284,6 @@ msgstr "Şunlar kullanılarak boyanmıştır: Filament %1%"
msgid "To:"
msgstr "İle:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Pütürlü yüzey boyama"
@@ -323,15 +305,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Bu nesne için boyalı pütürlü yüzeyi etkinleştir"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Taşı"
@@ -721,15 +694,6 @@ msgstr "Satıra göre kes"
msgid "Delete connector"
msgstr "Bağlayıcıyı sil"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Mesh adı"
@@ -1603,12 +1567,6 @@ msgstr "Paralel mesafe:"
msgid "Flip by Face 2"
msgstr "Yüzey 2ye Göre Çevir"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Birleştir"
@@ -1646,12 +1604,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Yüz ve yüz montajı"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1931,20 +1883,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3222,45 +3160,6 @@ msgstr "Maksimum sıcaklık aşılamaz"
msgid "The minmum temperature should not be less than "
msgstr "Minimum sıcaklık,"
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Tümü"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Hiçbirini seçme"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Gelişmiş ayarlar"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3542,9 +3441,6 @@ msgstr "Yazı tipinin verilen metin için herhangi bir şekli yoktur."
msgid "There is no valid surface for text projection."
msgstr "Metin yansıtma için geçerli bir yüzey yoktur."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "İlk katman optimizasyonu için Termal Ön Şartlandırma"
@@ -8710,6 +8606,9 @@ msgstr "Grup kullanıcı filament ön ayarları"
msgid "Group user filament presets based on selection"
msgstr "Kullanıcı filament ön ayarlarını seçime göre gruplandırın"
msgid "All"
msgstr "Tümü"
msgid "By type"
msgstr "Türe göre"
@@ -9088,14 +8987,6 @@ msgstr "Ağ Eklentisini İndirin"
msgid "Associate files to OrcaSlicer"
msgstr "Dosyaları OrcaSlicer ile ilişkilendirin"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr ".3mf dosyalarını OrcaSlicer ile ilişkilendirin"
@@ -9959,9 +9850,6 @@ msgstr ""
"destekleyip desteklemediğini kontrol edin veya yazıcının düzgün çalışıp "
"çalışmadığını kontrol edin."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Dilimleme tamam."
@@ -10418,9 +10306,6 @@ msgstr "Harici ve dahili köprüler için hızı ayarlayın"
msgid "Travel speed"
msgstr "Seyahat Hızı"
msgid "Junction Deviation"
msgstr "Köşe sapması"
msgid "Jerk(XY)"
msgstr "Sarsıntı(XY)"
@@ -11294,6 +11179,9 @@ msgstr ""
"Kullanılmayan yazıcı filamentleri ise otomatik olarak listenin sonuna "
"eklenecektir."
msgid "Advanced settings"
msgstr "Gelişmiş ayarlar"
msgid "Add unused AMS filaments to filaments list."
msgstr "Kullanılmayan AMS filamentlerini filament listesine ekleyin."
@@ -11794,23 +11682,12 @@ msgstr "Yeni bir Ağ eklentisi(%s) mevcut, Yüklemek istiyor musunuz?"
msgid "New version of Orca Slicer"
msgstr "Orca Slicerın yeni versiyonu"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Bu versiyonu atla"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Nozulu Onaylayın ve Güncelleyin"
@@ -11925,9 +11802,6 @@ msgstr "Kesim Modülü"
msgid "Auto Fire Extinguishing System"
msgstr "Otomatik Yangın Söndürme Sistemi"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Ürün yazılımını güncelle"
@@ -13151,7 +13025,7 @@ msgid "External bridge density"
msgstr "Dış köprü yoğunluğu"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -13165,14 +13039,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "İç köprü yoğunluğu"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13207,9 +13085,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15401,6 +15281,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Varsayılan sarsıntı."
msgid "Junction Deviation"
msgstr "Köşe sapması"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21531,6 +21414,9 @@ msgstr "Yazıcı Ön Ayarı"
msgid "Filament Preset Template"
msgstr "Filament Ön Ayar Şablonu"
msgid "Deselect All"
msgstr "Hiçbirini seçme"
msgid "Process Preset Template"
msgstr "İşleme Ön Ayarı Şablonu"
@@ -22044,21 +21930,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Eşleşmeyen yazdırma ana bilgisayarı türü: %s"
@@ -22876,105 +22750,6 @@ msgstr "Flashforge'a seri bağlantı yoluyla bağlanılamadı"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Sağlanan durum doğru değil."
@@ -23028,12 +22803,6 @@ msgstr "Kenar kulakları"
msgid "Please select single object."
msgstr "Lütfen tek bir nesne seçin."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Uzaklaştır"
@@ -23043,9 +22812,6 @@ msgstr "Yakınlaştır"
msgid "Load skipping objects information failed. Please try again."
msgstr "Nesne bilgilerinin atlanması yüklenemedi. Lütfen tekrar deneyin."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Seçildi"
@@ -23197,100 +22963,6 @@ msgstr "Üçgen yüzeylerin sayısı"
msgid "Calculating, please wait..."
msgstr "Hesaplanıyor, lütfen bekleyin..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: orcaslicerua\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-03-07 09:30+0200\n"
"Last-Translator: \n"
"Language-Team: Ukrainian\n"
@@ -194,15 +194,6 @@ msgstr "Виконано"
msgid "Support Generated"
msgstr "Згенеровані підтримки"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo - Покласти на грань"
@@ -291,15 +282,6 @@ msgstr "Забарвлений за допомогою: Філамент %1%"
msgid "To:"
msgstr "До:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Нанесення текстури"
@@ -319,15 +301,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr ""
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Перемістити"
@@ -722,15 +695,6 @@ msgstr "Розрізати по лінії"
msgid "Delete connector"
msgstr "Видалити з'єднувач"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Назва сітки"
@@ -1604,12 +1568,6 @@ msgstr "Паралельна відстань:"
msgid "Flip by Face 2"
msgstr "Перевернути за Гранню 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Об'єднати у збірку"
@@ -1648,12 +1606,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Збірка грань до грані"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1932,20 +1884,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3209,45 +3147,6 @@ msgstr ""
msgid "The minmum temperature should not be less than "
msgstr ""
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Всі"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Скасувати вибір всіх"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr ""
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3517,9 +3416,6 @@ msgstr "Шрифт не має жодної форми для вказаного
msgid "There is no valid surface for text projection."
msgstr "Немає дійсної поверхні для проекції тексту."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr ""
@@ -8565,6 +8461,9 @@ msgstr ""
msgid "Group user filament presets based on selection"
msgstr ""
msgid "All"
msgstr "Всі"
msgid "By type"
msgstr ""
@@ -8915,14 +8814,6 @@ msgstr ""
msgid "Associate files to OrcaSlicer"
msgstr "Асоціювати файли з OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
#, fuzzy
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Асоціювати файли .3mf з OrcaSlicer"
@@ -9716,9 +9607,6 @@ msgid ""
"operation or verify if the printer is functioning properly."
msgstr ""
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Нарізка прибл."
@@ -10154,9 +10042,6 @@ msgstr "Встановіть швидкість для зовнішніх та
msgid "Travel speed"
msgstr "Швидкість переміщення"
msgid "Junction Deviation"
msgstr ""
msgid "Jerk(XY)"
msgstr "Ривок (XY)"
@@ -11021,6 +10906,9 @@ msgid ""
"list."
msgstr ""
msgid "Advanced settings"
msgstr ""
msgid "Add unused AMS filaments to filaments list."
msgstr ""
@@ -11507,23 +11395,12 @@ msgstr "Доступний новий мережевий плагін (%s), чи
msgid "New version of Orca Slicer"
msgstr "Нова версія Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Пропустити цю версію"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Підтвердити і оновити сопло"
@@ -11630,9 +11507,6 @@ msgstr ""
msgid "Auto Fire Extinguishing System"
msgstr ""
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Оновити прошивку"
@@ -12830,7 +12704,7 @@ msgid "External bridge density"
msgstr "Щільність зовнішніх мостів"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12844,14 +12718,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Щільність внутрішніх мостів"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12886,9 +12764,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15030,6 +14910,9 @@ msgstr "Klipper-ів max_accel_to_decel буде скориговано на ц
msgid "Default jerk."
msgstr ""
msgid "Junction Deviation"
msgstr ""
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -20967,6 +20850,9 @@ msgstr "Набір параметрів принтера"
msgid "Filament Preset Template"
msgstr "Шаблон набору параметрів філаменту"
msgid "Deselect All"
msgstr "Скасувати вибір всіх"
msgid "Process Preset Template"
msgstr "Шаблон набору параметрів процесу"
@@ -21464,21 +21350,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Невідповідність типу принт-сервера: %s"
@@ -22256,105 +22130,6 @@ msgstr ""
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Наданий стан невірний."
@@ -22407,12 +22182,6 @@ msgstr "Краєчки"
msgid "Please select single object."
msgstr "Будь ласка, виберіть один об’єкт."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Зменшити"
@@ -22422,9 +22191,6 @@ msgstr "Збільшити"
msgid "Load skipping objects information failed. Please try again."
msgstr ""
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr ""
@@ -22571,100 +22337,6 @@ msgstr "Кількість трикутних граней"
msgid "Calculating, please wait..."
msgstr "Розрахунок, будь ласка, зачекайте…"
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-10-02 17:43+0700\n"
"Last-Translator: \n"
"Language-Team: hainguyen.ts13@gmail.com\n"
@@ -192,15 +192,6 @@ msgstr "Hoàn thành"
msgid "Support Generated"
msgstr "Đã tạo support"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo - Đặt lên mặt"
@@ -288,15 +279,6 @@ msgstr "Vẽ bằng: Filament %1%"
msgid "To:"
msgstr "To:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "Tô fuzzy skin"
@@ -317,15 +299,6 @@ msgstr ""
msgid "Enable painted fuzzy skin for this object"
msgstr "Enable painted fuzzy skin for this object"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "Di chuyển"
@@ -712,15 +685,6 @@ msgstr "Cắt bằng đường"
msgid "Delete connector"
msgstr "Xóa connector"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "Tên mesh"
@@ -1583,12 +1547,6 @@ msgstr "Khoảng cách song song:"
msgid "Flip by Face 2"
msgstr "Lật theo mặt 2"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "Lắp ráp"
@@ -1625,12 +1583,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "Face and face assembly"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1907,20 +1859,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3195,45 +3133,6 @@ msgstr "The maximum temperature cannot exceed "
msgid "The minmum temperature should not be less than "
msgstr "The minmum temperature should not be less than "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "Tất cả"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "Bỏ chọn tất cả"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3504,9 +3403,6 @@ msgstr "Font doesn't have any shape for given text."
msgid "There is no valid surface for text projection."
msgstr "There is no valid surface for text projection."
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "Thermal Preconditioning for first layer optimization"
@@ -8625,6 +8521,9 @@ msgstr "Group user filament presets"
msgid "Group user filament presets based on selection"
msgstr "Group user filament presets based on selection"
msgid "All"
msgstr "Tất cả"
msgid "By type"
msgstr "By type"
@@ -8995,14 +8894,6 @@ msgstr "Download Network Plug-in"
msgid "Associate files to OrcaSlicer"
msgstr "Liên kết file với OrcaSlicer"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "Liên kết file 3MF với OrcaSlicer"
@@ -9832,9 +9723,6 @@ msgstr ""
"File upload timed out. Please check if the firmware version supports this "
"operation or verify if the printer is functioning properly."
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "Slice hoàn tất."
@@ -10280,9 +10168,6 @@ msgstr "Đặt tốc độ cho cầu bên ngoài và bên trong"
msgid "Travel speed"
msgstr "Tốc độ di chuyển"
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid "Jerk(XY)"
msgstr "Giật(XY)"
@@ -11145,6 +11030,9 @@ msgstr ""
"And unused printer filaments will be automatically added to the end of the "
"list."
msgid "Advanced settings"
msgstr "Advanced settings"
msgid "Add unused AMS filaments to filaments list."
msgstr "Add unused AMS filaments to filaments list."
@@ -11640,23 +11528,12 @@ msgstr "Có plug-in mạng mới (%s). Bạn có muốn cài đặt nó?"
msgid "New version of Orca Slicer"
msgstr "Phiên bản mới của Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "Bỏ qua phiên bản này"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "Xác nhận và cập nhật đầu phun"
@@ -11770,9 +11647,6 @@ msgstr "Module cắt"
msgid "Auto Fire Extinguishing System"
msgstr "Auto Fire Extinguishing System"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "Cập nhật firmware"
@@ -12965,7 +12839,7 @@ msgid "External bridge density"
msgstr "Mật độ cầu bên ngoài"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12979,14 +12853,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "Mật độ cầu bên trong"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -13021,9 +12899,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -15175,6 +15055,9 @@ msgstr ""
msgid "Default jerk."
msgstr "Giật mặc định."
msgid "Junction Deviation"
msgstr "Junction Deviation"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -21189,6 +21072,9 @@ msgstr "Cài đặt sẵn máy in"
msgid "Filament Preset Template"
msgstr "Mẫu cài đặt sẵn filament"
msgid "Deselect All"
msgstr "Bỏ chọn tất cả"
msgid "Process Preset Template"
msgstr "Mẫu cài đặt sẵn quy trình"
@@ -21688,21 +21574,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "Loại máy chủ in không khớp: %s"
@@ -22491,105 +22365,6 @@ msgstr "Không thể kết nối với Flashforge qua serial"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "Trạng thái được cung cấp không chính xác."
@@ -22643,12 +22418,6 @@ msgstr "Tai vành"
msgid "Please select single object."
msgstr "Vui lòng chọn một đối tượng duy nhất."
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "Zoom Out"
@@ -22658,9 +22427,6 @@ msgstr "Zoom In"
msgid "Load skipping objects information failed. Please try again."
msgstr "Load skipping objects information failed. Please try again."
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d Selected"
@@ -22812,100 +22578,6 @@ msgstr "Number of triangular facets"
msgid "Calculating, please wait..."
msgstr "Calculating, please wait..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Slic3rPE\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"PO-Revision-Date: 2026-06-11 12:37-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2026-02-28 00:59\n"
"Last-Translator: Handle <mail@bysb.net>\n"
"Language-Team: \n"
"Language: zh_CN\n"
@@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Poedit 3.9\n"
"X-Generator: OrcaSlicer Translation Helper\n"
msgid "right"
msgstr "右"
@@ -186,15 +186,6 @@ msgstr "完成"
msgid "Support Generated"
msgstr "已生成支撑"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "选择底面"
@@ -281,15 +272,6 @@ msgstr "绘制使用:耗材丝%1%"
msgid "To:"
msgstr "到:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "手绘绒毛表面"
@@ -309,15 +291,6 @@ msgstr "警告:绒毛表面已禁用,手绘的绒毛表面将不会生效!
msgid "Enable painted fuzzy skin for this object"
msgstr "为此对象启用手绘绒毛表面"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "移动"
@@ -703,15 +676,6 @@ msgstr "按线切割"
msgid "Delete connector"
msgstr "删除连接器"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "网格名称"
@@ -1565,12 +1529,6 @@ msgstr "平行距离:"
msgid "Flip by Face 2"
msgstr "通过面2翻转"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "组合"
@@ -1607,12 +1565,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "面对面装配"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1884,20 +1836,6 @@ msgstr ""
"云同步冲突OrcaCloud 中已存在同名预设。\n"
"拉取将下载云端副本。强制推送将用您的本地预设覆盖它。"
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3143,45 +3081,6 @@ msgstr "最高温度不可超过 "
msgid "The minmum temperature should not be less than "
msgstr "最低温度不可低于 "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "所有"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "全部取消选中"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "高级设置"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3430,9 +3329,6 @@ msgstr "字体没有给定文本对应的形状。"
msgid "There is no valid surface for text projection."
msgstr "没有有效的表面用于文字投影。"
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "用于第一层优化的热预处理"
@@ -8336,6 +8232,9 @@ msgstr "组用户耗材丝预设"
msgid "Group user filament presets based on selection"
msgstr "根据选择对用户耗材丝预设进行分组"
msgid "All"
msgstr "所有"
msgid "By type"
msgstr "按类型"
@@ -8702,14 +8601,6 @@ msgstr "下载网络插件"
msgid "Associate files to OrcaSlicer"
msgstr "逆戟鲸切片器文件关联"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "将 3MF 文件关联到 OrcaSlicer"
@@ -9506,9 +9397,6 @@ msgid ""
"operation or verify if the printer is functioning properly."
msgstr "文件上传超时。请检查固件版本是否支持此操作或验证打印机是否正常工作。"
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "切片完成."
@@ -9921,9 +9809,6 @@ msgstr "设置外部和内部桥接的速度"
msgid "Travel speed"
msgstr "空驶速度"
msgid "Junction Deviation"
msgstr "结点偏差"
msgid "Jerk(XY)"
msgstr "抖动XY轴"
@@ -10775,6 +10660,9 @@ msgid ""
msgstr ""
"根据打印机耗材顺序替换项目耗材列表。未使用的打印机耗材将自动添加到列表末尾。"
msgid "Advanced settings"
msgstr "高级设置"
msgid "Add unused AMS filaments to filaments list."
msgstr "将未使用的 AMS 耗材丝添加到耗材丝列表中。"
@@ -11257,23 +11145,12 @@ msgstr "新的网络插件(%s) 可用,您是否需要安装它?"
msgid "New version of Orca Slicer"
msgstr "新版本的Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr "在 Github 上查看"
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "跳过本版本"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "确认并更新喷嘴"
@@ -11379,9 +11256,6 @@ msgstr "切割模块"
msgid "Auto Fire Extinguishing System"
msgstr "自动灭火系统"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "更新固件"
@@ -12484,9 +12358,8 @@ msgstr "启用后,桥接角度值将被加到自动计算出的桥接方向上
msgid "External bridge density"
msgstr "外部桥接密度"
#, fuzzy
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12500,7 +12373,9 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
"控制外部桥接线的密度(间距)。默认值为 100%。\n"
"理论上 100% 意味着实心桥接但由于桥接挤出物容易下垂100% 可能并不足够。\n"
@@ -12512,14 +12387,17 @@ msgstr ""
"- 低于 100% 的密度(最小 10%\n"
" - 优点:可形成类似拉丝的第一层。速度更快、冷却更好,因为挤出桥接周围有更多"
"空气流通的空间。\n"
" - 缺点:可能导致下垂和较差的表面光洁度。"
" - 缺点:可能导致下垂和较差的表面光洁度。\n"
"\n"
"推荐范围:最小 10% - 最大 125%。"
msgid "Internal bridge density"
msgstr "内部桥接密度"
#, fuzzy
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12576,15 +12454,18 @@ msgstr ""
"实际使用的桥接流量是将此值乘以耗材流量比,以及(如已设置)对象的流量比计算得"
"出的。"
#, fuzzy, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
"If set to 0, the line width will match the Internal solid infill width."
msgstr ""
"桥接线的线宽。如果以百分比表示,将根据喷嘴直径计算。\n"
"桥接线宽可以表示为绝对值,或当前喷嘴直径的百分比(百分比根据喷嘴直径计"
"算)。\n"
"建议与较高的桥接密度或桥接流量比配合使用。\n"
"\n"
"最大值为 100% 或喷嘴直径。\n"
@@ -14601,6 +14482,9 @@ msgstr "Klipper固件的max_accel_to_decel将被调整为该加速度的百分
msgid "Default jerk."
msgstr "默认抖动"
msgid "Junction Deviation"
msgstr "结点偏差"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -20281,6 +20165,9 @@ msgstr "打印机预设"
msgid "Filament Preset Template"
msgstr "耗材预设模板"
msgid "Deselect All"
msgstr "全部取消选中"
msgid "Process Preset Template"
msgstr "工艺预设模板"
@@ -20741,21 +20628,9 @@ msgstr "未找到打印机类型,请手动选择。"
msgid "Authorizing..."
msgstr "正在授权..."
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr "会话检查出错"
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "%s 打印机的主机类型不匹配"
@@ -21482,105 +21357,6 @@ msgstr "无法通过串口连接Flashforge"
msgid "Flashforge local API requires both serial number and access code."
msgstr "Flashforge 本地 API 同时需要序列号和访问码。"
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "提供的状态不正确。"
@@ -21631,12 +21407,6 @@ msgstr "耳状帽檐"
msgid "Please select single object."
msgstr "请选中单个对象。"
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "缩小"
@@ -21646,9 +21416,6 @@ msgstr "放大"
msgid "Load skipping objects information failed. Please try again."
msgstr "加载跳过对象信息失败。请再试一次。"
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d 已选择"
@@ -21794,100 +21561,6 @@ msgstr "三角面片数量"
msgid "Calculating, please wait..."
msgstr "正在计算,请稍候..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."
@@ -22265,97 +21938,6 @@ msgstr ""
"避免翘曲\n"
"您知道吗打印ABS这类易翘曲材料时适当提高热床温度可以降低翘曲的概率。"
#~ msgid ""
#~ "Controls the density (spacing) of external bridge lines. Default is "
#~ "100%.\n"
#~ "Theoretically, 100% means a solid bridge, but due to the tendency of "
#~ "bridge extrusions to sag, 100% may not be sufficient.\n"
#~ "\n"
#~ "- Higher than 100% density (Recommended Max 125%):\n"
#~ " - Pros: Produces smoother bridge surfaces, as overlapping lines provide "
#~ "additional support during printing.\n"
#~ " - Cons: Can cause overextrusion, which may reduce lower and upper "
#~ "surface quality and increase the risk of warping.\n"
#~ "\n"
#~ "- Lower than 100% density (Min 10%):\n"
#~ " - Pros: Can create a string-like first layer. Faster and with better "
#~ "cooling because there is more space for air to circulate around the "
#~ "extruded bridge.\n"
#~ " - Cons: May lead to sagging and poorer surface finish.\n"
#~ "\n"
#~ "Recommended range: Minimum 10% - Maximum 125%."
#~ msgstr ""
#~ "控制外部桥接线的密度(间距)。默认值为 100%。\n"
#~ "理论上 100% 意味着实心桥接但由于桥接挤出物容易下垂100% 可能并不足"
#~ "够。\n"
#~ "\n"
#~ "- 高于 100% 的密度(推荐最大 125%\n"
#~ " - 优点:产生更平滑的桥接表面,因为重叠的线在打印过程中提供额外支撑。\n"
#~ " - 缺点:可能导致过度挤出,从而降低上下表面质量并增加翘曲风险。\n"
#~ "\n"
#~ "- 低于 100% 的密度(最小 10%\n"
#~ " - 优点:可形成类似拉丝的第一层。速度更快、冷却更好,因为挤出桥接周围有更"
#~ "多空气流通的空间。\n"
#~ " - 缺点:可能导致下垂和较差的表面光洁度。\n"
#~ "\n"
#~ "推荐范围:最小 10% - 最大 125%。"
#~ msgid ""
#~ "Controls the density (spacing) of internal bridge lines. Default is 100%. "
#~ "100% means a solid internal bridge.\n"
#~ "\n"
#~ "Internal bridges act as intermediate support between sparse infill and "
#~ "top solid infill and can strongly affect top surface quality.\n"
#~ "\n"
#~ "- Higher than 100% density (Recommended Max 125%):\n"
#~ " - Pros: Improves internal bridge strength and support under top layers, "
#~ "reducing sagging and improving top-surface finish.\n"
#~ " - Cons: Increases material use and print time; excessive density may "
#~ "cause overextrusion and internal stresses.\n"
#~ "\n"
#~ "- Lower than 100% density (Min 10%):\n"
#~ " - Pros: Can reduce pillowing and improve cooling (more airflow through "
#~ "the bridge), and may speed up printing.\n"
#~ " - Cons: May reduce internal support, increasing the risk of sagging and "
#~ "top surface defects.\n"
#~ "\n"
#~ "This option works particularly well when combined with the second "
#~ "internal bridge over infill option to improve bridging further before "
#~ "solid infill is extruded."
#~ msgstr ""
#~ "控制内部桥接线的密度(间距)。默认值为 100%。100% 表示实心内部桥接。\n"
#~ "\n"
#~ "内部桥接作为稀疏填充与顶部实心填充之间的过渡支撑,会强烈影响顶面质量。\n"
#~ "\n"
#~ "- 高于 100% 的密度(推荐最大 125%\n"
#~ " - 优点:提升内部桥接强度以及对顶层的支撑,减少下垂并改善顶面光洁度。\n"
#~ " - 缺点:增加材料用量和打印时间;密度过高可能导致过度挤出和内部应力。\n"
#~ "\n"
#~ "- 低于 100% 的密度(最小 10%\n"
#~ " - 优点:可减少表面起鼓并改善冷却(更多气流通过桥接),还可能加快打印速"
#~ "度。\n"
#~ " - 缺点:可能降低内部支撑,增加下垂和顶面缺陷的风险。\n"
#~ "\n"
#~ "此选项与“在填充上方增加第二层内部桥接”选项结合使用时效果尤佳,可在挤出实心"
#~ "填充之前进一步改善桥接。"
#, fuzzy, c-format, boost-format
#~ msgid ""
#~ "Bridge line width is expressed either as an absolute value or as a "
#~ "percentage of the active nozzle diameter (percentages are computed from "
#~ "the nozzle diameter).\n"
#~ "Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
#~ "\n"
#~ "The maximum value is 100% or the nozzle diameter.\n"
#~ "If set to 0, the line width will match the Internal solid infill width."
#~ msgstr ""
#~ "桥接线宽可以表示为绝对值,或当前喷嘴直径的百分比(百分比根据喷嘴直径计"
#~ "算)。\n"
#~ "建议与较高的桥接密度或桥接流量比配合使用。\n"
#~ "\n"
#~ "最大值为 100% 或喷嘴直径。\n"
#~ "如果设置为 0线宽将与内部实心填充宽度一致。"
#~ msgid ""
#~ "The Wipe option is not available when using the Firmware Retraction "
#~ "mode.\n"

View File

@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Orca Slicer\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-11 17:12-0300\n"
"POT-Creation-Date: 2026-06-08 00:18+0800\n"
"PO-Revision-Date: 2025-11-28 13:48-0600\n"
"Last-Translator: tntchn <15895303+tntchn@users.noreply.github.com>\n"
"Language-Team: \n"
@@ -191,15 +191,6 @@ msgstr "完成"
msgid "Support Generated"
msgstr "已產生支撐"
msgid "Entering Paint-on supports"
msgstr ""
msgid "Leaving Paint-on supports"
msgstr ""
msgid "Paint-on supports editing"
msgstr ""
msgid "Gizmo-Place on Face"
msgstr "Gizmo-放置在臉上"
@@ -285,15 +276,6 @@ msgstr "上色:線材 %1%"
msgid "To:"
msgstr "到:"
msgid "Entering color painting"
msgstr ""
msgid "Leaving color painting"
msgstr ""
msgid "Color painting editing"
msgstr ""
msgid "Paint-on fuzzy skin"
msgstr "塗刷絨毛表面效果"
@@ -313,15 +295,6 @@ msgstr "警告:絨毛表面功能已停用,繪製的絨毛表面效果將不
msgid "Enable painted fuzzy skin for this object"
msgstr "為此物件啟用繪製的絨毛表面"
msgid "Entering Paint-on fuzzy skin"
msgstr ""
msgid "Leaving Paint-on fuzzy skin"
msgstr ""
msgid "Paint-on fuzzy skin editing"
msgstr ""
msgid "Move"
msgstr "移動"
@@ -707,15 +680,6 @@ msgstr "用線切割"
msgid "Delete connector"
msgstr "刪除連接件"
msgid "Entering Cut gizmo"
msgstr ""
msgid "Leaving Cut gizmo"
msgstr ""
msgid "Cut gizmo editing"
msgstr ""
msgid "Mesh name"
msgstr "網格名稱"
@@ -1568,12 +1532,6 @@ msgstr "平行距離:"
msgid "Flip by Face 2"
msgstr "通過面 2 翻轉"
msgid "Entering Measure gizmo"
msgstr ""
msgid "Leaving Measure gizmo"
msgstr ""
msgid "Assemble"
msgstr "組合"
@@ -1610,12 +1568,6 @@ msgstr ""
msgid "Face and face assembly"
msgstr "面對面裝配"
msgid "Entering Assembly gizmo"
msgstr ""
msgid "Leaving Assembly gizmo"
msgstr ""
msgid "Ctrl+"
msgstr "Ctrl+"
@@ -1886,20 +1838,6 @@ msgid ""
"preset."
msgstr ""
msgid ""
"Cloud sync conflict: a preset with the same name was previously deleted from "
"the cloud.\n"
"Delete will delete your local preset. Force push overwrites it with your "
"local preset."
msgstr ""
msgid ""
"Cloud sync conflict: there was an unexpected or unidentified preset "
"conflict.\n"
"Pull downloads the cloud copy. Force push overwrites it with your local "
"preset."
msgstr ""
msgid ""
"Force push will overwrite the cloud copy with your local preset changes.\n"
"Do you want to continue?"
@@ -3143,45 +3081,6 @@ msgstr "最高溫度不能超過 "
msgid "The minmum temperature should not be less than "
msgstr "最低溫度不應低於 "
msgid "Type to filter..."
msgstr ""
msgid "All"
msgstr "所有"
msgid "No selected items..."
msgstr ""
msgid "All items selected..."
msgstr ""
msgid "No matching items..."
msgstr ""
msgid "Deselect All"
msgstr "取消全選"
msgid "Select visible"
msgstr ""
msgid "Deselect visible"
msgstr ""
msgid "Filter selected"
msgstr ""
msgid "Filter nonSelected"
msgstr ""
msgid "Simple settings"
msgstr ""
msgid "Advanced settings"
msgstr "進階設定"
msgid "Expert settings"
msgstr ""
msgid ""
"All the selected objects are on a locked plate.\n"
"Cannot auto-arrange these objects."
@@ -3435,9 +3334,6 @@ msgstr "字型沒有指定文字對應的形狀。"
msgid "There is no valid surface for text projection."
msgstr "沒有有效的表面用於文字投影。"
msgid "An unexpected error occurred"
msgstr ""
msgid "Thermal Preconditioning for first layer optimization"
msgstr "首層優化的熱預調節"
@@ -8389,6 +8285,9 @@ msgstr "將使用者線材預設分組"
msgid "Group user filament presets based on selection"
msgstr "根據選擇將使用者線材預設分組"
msgid "All"
msgstr "所有"
msgid "By type"
msgstr "按類型"
@@ -8741,14 +8640,6 @@ msgstr "下載網路外掛程式"
msgid "Associate files to OrcaSlicer"
msgstr "Orca Slicer 檔案關聯"
msgid ""
"File associations for the Microsoft Store version are managed by Windows "
"Settings."
msgstr ""
msgid "Open Windows Default Apps Settings"
msgstr ""
msgid "Associate 3MF files to OrcaSlicer"
msgstr "將 3MF 檔案關聯到 OrcaSlicer"
@@ -9542,9 +9433,6 @@ msgid ""
msgstr ""
"檔案上傳逾時。請檢查韌體版本是否支援此操作,或確認列印設備是否正常運作。"
msgid "Sending failed, please try again!"
msgstr ""
msgid "Slice ok."
msgstr "切片完成。"
@@ -9964,9 +9852,6 @@ msgstr "設定外部和內部橋接的速度"
msgid "Travel speed"
msgstr "空駛速度"
msgid "Junction Deviation"
msgstr "轉折偏移值"
msgid "Jerk(XY)"
msgstr "抖動XY軸"
@@ -10799,6 +10684,9 @@ msgstr ""
"根據列印設備線材依序替換專案線材清單。未使用的列印設備線材將自動新增至清單末"
"端。"
msgid "Advanced settings"
msgstr "進階設定"
msgid "Add unused AMS filaments to filaments list."
msgstr "將未使用的 AMS 線材新增至線材清單。"
@@ -11277,23 +11165,12 @@ msgstr "新版的網路外掛程式(%s可用是否要安裝"
msgid "New version of Orca Slicer"
msgstr "新版本的 Orca Slicer"
msgid "Check on Microsoft Store"
msgstr ""
msgid "Check on Github"
msgstr ""
msgid "Open Microsoft Store"
msgstr ""
msgid "Skip this Version"
msgstr "跳過這個版本"
#, c-format, boost-format
msgid ""
"New version available: %s. Please update OrcaSlicer from the Microsoft Store."
msgstr ""
msgid "Confirm and Update Nozzle"
msgstr "確認並更新噴嘴"
@@ -11399,9 +11276,6 @@ msgstr "切割模組"
msgid "Auto Fire Extinguishing System"
msgstr "自動滅火系統"
msgid "Beta"
msgstr ""
msgid "Update firmware"
msgstr "更新韌體"
@@ -12480,7 +12354,7 @@ msgid "External bridge density"
msgstr "外部橋接密度"
msgid ""
"Controls the density (spacing) of external bridge lines.\n"
"Controls the density (spacing) of external bridge lines. Default is 100%.\n"
"Theoretically, 100% means a solid bridge, but due to the tendency of bridge "
"extrusions to sag, 100% may not be sufficient.\n"
"\n"
@@ -12494,14 +12368,18 @@ msgid ""
" - Pros: Can create a string-like first layer. Faster and with better "
"cooling because there is more space for air to circulate around the extruded "
"bridge.\n"
" - Cons: May lead to sagging and poorer surface finish."
" - Cons: May lead to sagging and poorer surface finish.\n"
"\n"
"Recommended range: Minimum 10% - Maximum 125%."
msgstr ""
msgid "Internal bridge density"
msgstr "內部橋接密度"
msgid ""
"Controls the density (spacing) of internal bridge lines.\n"
"Controls the density (spacing) of internal bridge lines. Default is 100%. "
"100% means a solid internal bridge.\n"
"\n"
"Internal bridges act as intermediate support between sparse infill and top "
"solid infill and can strongly affect top surface quality.\n"
"\n"
@@ -12536,9 +12414,11 @@ msgid ""
"filament flow ratio, and if set, the object's flow ratio."
msgstr ""
#, c-format, boost-format
msgid ""
"Line width of the Bridge. If expressed as a %, it will be computed over the "
"nozzle diameter.\n"
"Bridge line width is expressed either as an absolute value or as a "
"percentage of the active nozzle diameter (percentages are computed from the "
"nozzle diameter).\n"
"Recommended to use with a higher Bridge density or Bridge flow ratio.\n"
"\n"
"The maximum value is 100% or the nozzle diameter.\n"
@@ -14500,6 +14380,9 @@ msgstr "Klipper 的最大煞車速度將調整為加速度的 %%"
msgid "Default jerk."
msgstr "預設抖動"
msgid "Junction Deviation"
msgstr "轉折偏移值"
msgid ""
"Marlin Firmware Junction Deviation (replaces the traditional XY Jerk "
"setting)."
@@ -20112,6 +19995,9 @@ msgstr "列印設備預設設定"
msgid "Filament Preset Template"
msgstr "線材預設設定範本"
msgid "Deselect All"
msgstr "取消全選"
msgid "Process Preset Template"
msgstr "處理預設設定範本"
@@ -20569,21 +20455,9 @@ msgstr ""
msgid "Authorizing..."
msgstr ""
msgid "Error. Can't get api token for authorization"
msgstr ""
msgid "Could not parse server response."
msgstr ""
msgid "Error saving session to file"
msgstr ""
msgid "Error session check"
msgstr ""
msgid "Error during file upload"
msgstr ""
#, c-format, boost-format
msgid "Mismatched type of print host: %s"
msgstr "列印主機類型不符:%s"
@@ -21310,105 +21184,6 @@ msgstr "無法透過串列埠連接 Flashforge"
msgid "Flashforge local API requires both serial number and access code."
msgstr ""
msgid "Printer returned an error"
msgstr ""
msgid "Missing system_info in response"
msgstr ""
msgid "Missing printer serial number in response"
msgstr ""
msgid "Error parsing response"
msgstr ""
msgid "ElegooLink not detected"
msgstr ""
msgid "Invalid access code"
msgstr ""
msgid "CC2 device not detected"
msgstr ""
msgid "Connection to ElegooLink is working correctly."
msgstr ""
msgid "Could not connect to ElegooLink"
msgstr ""
#, boost-format
msgid "Error code: %1%"
msgstr ""
msgid "Upload failed"
msgstr ""
msgid ""
"The file has been transferred, but some unknown errors occurred. Please "
"check the device page for the file and try to start printing again."
msgstr ""
msgid "Failed to open file for upload."
msgstr ""
msgid "Failed to read file chunk for upload."
msgstr ""
msgid "CC2 upload failed"
msgstr ""
msgid "The file is empty or could not be read."
msgstr ""
msgid "Failed to calculate file checksum."
msgstr ""
msgid "Error code not found"
msgstr ""
msgid ""
"The printer is busy, Please check the device page for the file and try to "
"start printing again."
msgstr ""
msgid "The file is lost, please check and try again."
msgstr ""
msgid "The file is corrupted, please check and try again."
msgstr ""
msgid "Transmission abnormality, please check and try again."
msgstr ""
msgid "The file does not match the printer, please check and try again."
msgstr ""
msgid "Start print timeout"
msgstr ""
msgid "Start print failed"
msgstr ""
msgid "Connected to CrealityPrint successfully!"
msgstr ""
msgid "Could not connect to CrealityPrint"
msgstr ""
msgid ""
"Connection timed out. Please check if the printer and computer network are "
"functioning properly, and confirm that they are on the same network."
msgstr ""
msgid "The Hostname/IP/URL could not be parsed, please check it and try again."
msgstr ""
msgid ""
"File/data transfer interrupted. Please check the printer and network, then "
"try it again."
msgstr ""
msgid "The provided state is not correct."
msgstr "提供的狀態不正確。"
@@ -21459,12 +21234,6 @@ msgstr "邊緣支撐 (Brim)"
msgid "Please select single object."
msgstr "請選擇一個物件。"
msgid "Entering Brim Ears"
msgstr ""
msgid "Leaving Brim Ears"
msgstr ""
msgid "Zoom Out"
msgstr "縮小"
@@ -21474,9 +21243,6 @@ msgstr "放大"
msgid "Load skipping objects information failed. Please try again."
msgstr "載入跳過物件資訊失敗。請再試一次。"
msgid "Failed to create the temporary folder."
msgstr ""
#, c-format, boost-format
msgid "/%d Selected"
msgstr "/%d 已選擇"
@@ -21622,100 +21388,6 @@ msgstr "三角面片數量"
msgid "Calculating, please wait..."
msgstr "正在計算,請稍候..."
msgid "PresetBundle"
msgstr ""
msgid "Bundle folder does not exist."
msgstr ""
msgid "Failed to open folder."
msgstr ""
msgid "Delete selected bundle from folder and all presets loaded from it?"
msgstr ""
msgid "Delete Bundle"
msgstr ""
msgid "Failed to remove bundle."
msgstr ""
msgid "Remove Bundle"
msgstr ""
msgid "Unsubscribe bundle?"
msgstr ""
msgid "UnsubscribeBundle"
msgstr ""
msgid "Failed to unsubscribe bundle."
msgstr ""
msgid "Unsubscribe Bundle"
msgstr ""
msgid "ExportPresetBundle"
msgstr ""
msgid "Save preset bundle"
msgstr ""
msgid ""
"Performing desktop integration failed - boost::filesystem::canonical did not "
"return appimage path."
msgstr ""
msgid "Performing desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing desktop integration failed because the application directory was "
"not found."
msgstr ""
msgid ""
"Performing desktop integration failed - could not create Gcodeviewer desktop "
"file. OrcaSlicer desktop file was probably created successfully."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - boost::filesystem::"
"canonical did not return appimage path."
msgstr ""
msgid ""
"Performing downloader desktop integration failed - Could not find executable."
msgstr ""
msgid ""
"Performing downloader desktop integration failed because the application "
"directory was not found."
msgstr ""
msgid "Desktop Integration"
msgstr ""
msgid ""
"Desktop Integration sets this binary to be searchable by the system.\n"
"\n"
"Press \"Perform\" to proceed."
msgstr ""
msgid "The download has failed"
msgstr ""
#. TRN %1% = file path
#, boost-format
msgid "Can't create file at %1%"
msgstr ""
msgid "Archive preview"
msgstr ""
msgid "Open File"
msgstr ""
msgid ""
"The filament may not be compatible with the current machine settings. "
"Generic filament presets will be used."

View File

@@ -124,7 +124,7 @@
"default_filament_profile": [
"Creality HF Generic PLA"
],
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"scan_first_layer": "0",
"thumbnails": [

View File

@@ -124,7 +124,7 @@
"default_filament_profile": [
"Creality HF Generic PLA"
],
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"scan_first_layer": "0",
"thumbnails": [

View File

@@ -124,7 +124,7 @@
"default_filament_profile": [
"Creality HF Generic PLA"
],
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"scan_first_layer": "0",
"thumbnails": [

View File

@@ -54,7 +54,7 @@
"machine_pause_gcode": "PAUSE",
"machine_platform_motion_enable": "1",
"machine_ptc_exist": "1",
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_hrc": "0",

View File

@@ -123,7 +123,7 @@
"default_filament_profile": [
"Creality Generic PLA @K1-all"
],
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"scan_first_layer": "0",
"thumbnails_format": "PNG",

View File

@@ -53,7 +53,7 @@
"machine_min_travel_rate": "0,0",
"machine_pause_gcode": "PAUSE",
"machine_platform_motion_enable": "1",
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_hrc": "0",

View File

@@ -54,7 +54,7 @@
"machine_pause_gcode": "PAUSE",
"machine_platform_motion_enable": "1",
"machine_ptc_exist": "1",
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_hrc": "0",

View File

@@ -54,7 +54,7 @@
"machine_pause_gcode": "PAUSE",
"machine_platform_motion_enable": "1",
"machine_ptc_exist": "1",
"machine_start_gcode": "START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM204 S2000\nM104 S[nozzle_temperature_initial_layer]\nG1 Z3 F600\nM83\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_hrc": "0",

View File

@@ -88,8 +88,7 @@
"5"
],
"machine_pause_gcode": "PAUSE",
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": ";SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y130 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y130 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X130 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_type": "hardened_steel",

View File

@@ -86,8 +86,8 @@
"5"
],
"machine_pause_gcode": "PAUSE",
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_type": "hardened_steel",
"nozzle_volume": "183",

View File

@@ -86,8 +86,7 @@
"5"
],
"machine_pause_gcode": "PAUSE",
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_type": "hardened_steel",

View File

@@ -86,8 +86,7 @@
"5"
],
"machine_pause_gcode": "PAUSE",
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_type": "hardened_steel",

View File

@@ -138,8 +138,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\nG1 X0 Y245 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -138,8 +138,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\nG1 X0 Y245 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -138,8 +138,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\nG1 X0 Y245 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -138,8 +138,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; creality_uuid: <random_uuid>\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\nG1 X0 Y245 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -138,8 +138,8 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": ";SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\n\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "END_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\nG1 X0 Y245 F30000\nG1 Z{z_after_toolchange} F600",
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",

View File

@@ -136,8 +136,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "{if print_sequence == \"by object\"}\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{max_layer_z+2} F600\n{endif}\nEND_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{if print_sequence == \"by object\"}\nG0 Z{max_layer_z + 0.8} F900\n{endif}\nG1 X0 Y160 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -136,8 +136,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "{if print_sequence == \"by object\"}\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{max_layer_z+2} F600\n{endif}\nEND_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{if print_sequence == \"by object\"}\nG0 Z{max_layer_z + 0.8} F900\n{endif}\nG1 X0 Y160 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -136,8 +136,7 @@
"default_filament_profile": [
"Creality Generic PLA @K2-all"
],
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_end_gcode": "{if print_sequence == \"by object\"}\nG91\nG1 X2 Y2 Z1 F24000\nG90\nG1 Z{max_layer_z+2} F600\n{endif}\nEND_PRINT",
"machine_pause_gcode": "PAUSE",
"change_filament_gcode": "G2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{if print_sequence == \"by object\"}\nG0 Z{max_layer_z + 0.8} F900\n{endif}\nG1 X0 Y160 F30000\nG1 Z{z_after_toolchange} F600",

View File

@@ -53,8 +53,7 @@
"machine_min_travel_rate": "0,0",
"machine_pause_gcode": "PAUSE",
"machine_platform_motion_enable": "1",
"_comment": "the generated by Creality_Print start gcode removes a warning/error message when printing with Orca because it thinks its sliced with CrealityPrint ",
"machine_start_gcode": "; HEADER_BLOCK_START\n; generated by Creality_Print V7.0.1.4212 on [year]-[month]-[day] at [hour]:[minute]:[second]\n; total layer number: [total_layer_count]\n; HEADER_BLOCK_END\n; SET PRINT AREA MIN AND MAX COORDINATES TO ENABLE ADAPTIVE PROBING\n; MINX = {first_layer_print_min[0]}\n; MINY = {first_layer_print_min[1]}\n; MAXX = {first_layer_print_max[0]}\n; MAXY = {first_layer_print_max[1]}\nM140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM109 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 X0 Y0 E15 F6000\nG1 X150 Y0 E15 F6000\nG92 E0\nG1 Z1 F600",
"machine_start_gcode": "M140 S0\nM104 S0 \nSTART_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]\nT[initial_no_support_extruder]\nM104 S[nozzle_temperature_initial_layer]\nM204 S2000\nG1 Z3 F600\nM83\nG1 Y150 F12000\nG1 X0 F12000\nG1 Z0.2 F600\nG1 X0 Y150 F6000\nG1 E0.8 F300\nG1 X0 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG1 X150 Y0 E9 F{filament_max_volumetric_speed[initial_extruder]/0.3*60}\nG92 E0\nG1 Z1 F600",
"machine_unload_filament_time": "0",
"manual_filament_change": "0",
"nozzle_hrc": "0",

View File

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

View File

@@ -62,7 +62,7 @@
"change_filament_gcode": "",
"machine_pause_gcode": "M600",
"support_multi_filament": "0",
"layer_change_gcode": "SET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count] CURRENT_LAYER={layer_num+1}",
"machine_start_gcode": ";;===== date: 20251011 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\n;bed_level_temp:[bed_temperature_initial_layer_single]\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nM729 ;Clean Nozzle\nM190 S[bed_temperature_initial_layer_single]\n\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X-1.2 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X-0.5 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count] CURRENT_LAYER=0\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0",
"layer_change_gcode": "SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}",
"machine_start_gcode": ";;===== date: 20251011 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\n;bed_level_temp:[bed_temperature_initial_layer_single]\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nM729 ;Clean Nozzle\nM190 S[bed_temperature_initial_layer_single]\n\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X-1.2 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X-0.5 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0",
"machine_end_gcode": ";===== date: 20250603 =====================\nM400 ; wait for buffer to clear\nM140 S0 ;Turn-off bed\nM106 S255 ;Cooling nozzle\nM83\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800\nG2 I1 J0 Z{max_layer_z+0.5} F3000 ; lower z a little\nG90\n{if max_layer_z > 100}G1 Z{min(max_layer_z+50, printable_height+0.5)} F20000{else}G1 Z100 F20000 {endif}; Move print head up \nM204 S5000\nM400\nM83\nG1 X202 F20000\nM400\nG1 Y250 F20000\nG1 Y264.5 F1200\nM400\nG92 E0\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM84 ;Disable all steppers"
}

View File

@@ -66,7 +66,7 @@
"change_filament_gcode": "\n;==========CC_CHANGE_FILAMENT_GCODE_CCB==========\n;===== date: 2025-12-04-001 =====================\nM106 S0\nM106 P2 S0\nG1 Z{min(max_layer_z+3, printable_height+0.5)} F1200\nM6211 T[next_extruder] L[flush_length] M{old_filament_e_feedrate} N{new_filament_e_feedrate} Q[old_filament_temp] R[nozzle_temperature_range_high] S[new_filament_temp]\nT[next_extruder]\n;==========CC_CHANGE_FILAMENT_GCODE_CCE==========",
"machine_pause_gcode": "M600",
"support_multi_filament": "1",
"layer_change_gcode": "SET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count] CURRENT_LAYER={layer_num+1}",
"machine_start_gcode": ";===== CC_START_GCODE ================\n;===== date: 2026-04-28-001 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\n;bed_level_temp:[bed_temperature_initial_layer_single]\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nM83\nG28 ;home\nM729 ;Clean Nozzle\nM190 S[bed_temperature_initial_layer_single]\n\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\n\n\nG90\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X0 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X0.9 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count] CURRENT_LAYER=0\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0",
"layer_change_gcode": "SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}",
"machine_start_gcode": ";===== CC_START_GCODE ================\n;===== date: 2026-04-28-001 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\n;bed_level_temp:[bed_temperature_initial_layer_single]\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nM83\nG28 ;home\nM729 ;Clean Nozzle\nM190 S[bed_temperature_initial_layer_single]\n\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\n\n\nG90\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X0 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X0.9 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0",
"machine_end_gcode": ";===== CC_END_GCODE ================\n;===== date: 2025-12-04-001 =====================\nM400 ; wait for buffer to clear\nM140 S0 ;Turn-off bed\nM106 S255 ;Cooling nozzle\nM83\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800\nG2 I1 J0 Z{max_layer_z+0.5} F3000 ; lower z a little\nG90\n{if max_layer_z > 100}G1 Z{min(max_layer_z+50, printable_height+0.5)} F20000{else}G1 Z100 F20000 {endif}; Move print head up \nM204 S5000\nM749\nM204 S5000\nM400\nM83\nG1 X202 F20000\nM400\nG1 Y250 F20000\nG1 Y264.5 F1200\nM400\nG92 E0\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM84 ;Disable all steppers"
}

View File

@@ -86,9 +86,9 @@
"9"
],
"change_filament_gcode": "\n;==========CC2_CHANGE_FILAMENT_GCODE==========\n;===== date: 2026-01-16-001 =====================\nM106 S0\nM106 P2 S0\nG1 Z{min(max_layer_z+3, printable_height+0.5)} F1200\nM6211 T[next_extruder] L[flush_length] M{old_filament_e_feedrate} N{new_filament_e_feedrate} Q[old_filament_temp] R[nozzle_temperature_range_high] S[new_filament_temp]\nT[next_extruder]\n",
"layer_change_gcode": "M73 L{layer_num+1}\n;LAYER:{layer_num+1}\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count] CURRENT_LAYER={layer_num+1}",
"layer_change_gcode": "M73 L{layer_num+1}\n;LAYER:{layer_num+1}\nSET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}",
"machine_end_gcode": ";===== CC2_END_GCODE ================\n;===== date: 2026-01-16-001 =====================\n\n\nM140 S0 ;Turn-off bed\nM83\nG92 E0 ; zero the extruder\nG1 E-1.5 F1800\nG2 I0 J1 Z{max_layer_z+0.5} F3000 ; lower z a little\nM106 S0\nM106 P2 S0\nG90\n{if max_layer_z > 75}G1 Z{min(max_layer_z+5, printable_height+0.5)} F20000{else}G1 Z80 F20000 {endif}; Move print head up \nG180 S9\nM104 S0\nM84\n",
"machine_start_gcode": ";===== CC2_START_GCODE ================\n;===== date: 2026-01-16-001 =====================\n\nG90\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nM190 S[bed_temperature_initial_layer_single] A\nM106 S0\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0 FROM_SLICER=1\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\nG28\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n{if first_layer_print_min[1] > 0.5}\nG180 S7\nG1 X{print_bed_max[0]*0.5-1} Y-1.2 F20000\nG1 Z0.5 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 E6 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nM106 S200\nG1 X{print_bed_max[0]*0.5-41} E20 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nG1 F6000\nG1 X{print_bed_max[0]*0.5-46} E0.8\n{else}\nG1 E30 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))}\n{endif}\nM106 S0\nG180 S8\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count] CURRENT_LAYER=0\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0",
"machine_start_gcode": ";===== CC2_START_GCODE ================\n;===== date: 2026-01-16-001 =====================\n\nG90\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nM190 S[bed_temperature_initial_layer_single] A\nM106 S0\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0 FROM_SLICER=1\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\nG28\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n{if first_layer_print_min[1] > 0.5}\nG180 S7\nG1 X{print_bed_max[0]*0.5-1} Y-1.2 F20000\nG1 Z0.5 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 E6 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nM106 S200\nG1 X{print_bed_max[0]*0.5-41} E20 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nG1 F6000\nG1 X{print_bed_max[0]*0.5-46} E0.8\n{else}\nG1 E30 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))}\n{endif}\nM106 S0\nG180 S8\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0",
"retract_restart_extra_toolchange": [
"0.5"
]

View File

@@ -2,6 +2,5 @@
"inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle",
"layer_height": "0.16",
"instantiation": "true",
"renamed_from": "0.16mm Optimal @EOS Giga 0.4 nozzle",
"name": "0.16mm Optimal @Elegoo Giga 0.4 nozzle"
}

View File

@@ -2,7 +2,6 @@
"inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle",
"layer_height": "0.18",
"instantiation": "true",
"renamed_from": "0.18mm Fine @EOS Giga 0.6 nozzle",
"name": "0.18mm Fine @Elegoo Giga 0.6 nozzle",
"compatible_printers": [
"Elegoo OrangeStorm Giga 0.6 nozzle"

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "PEOSG04020",
"instantiation": "true",
"renamed_from": "0.20mm Standard @EOS Giga 0.4 nozzle",
"default_acceleration": "3000",
"filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode",
"initial_layer_print_height": "0.25",

View File

@@ -4,6 +4,5 @@
"wall_sequence": "inner-outer-inner wall",
"reduce_crossing_wall": "1",
"instantiation": "true",
"renamed_from": "0.20mm Strength @EOS Giga 0.4 nozzle",
"wall_loops": "6"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle",
"layer_height": "0.24",
"instantiation": "true",
"renamed_from": "0.24mm Draft @EOS Giga 0.4 nozzle",
"name": "0.24mm Draft @Elegoo Giga 0.4 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle",
"layer_height": "0.24",
"instantiation": "true",
"renamed_from": "0.24mm Fine @EOS Giga 0.8 nozzle",
"name": "0.24mm Fine @Elegoo Giga 0.8 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle",
"layer_height": "0.24",
"instantiation": "true",
"renamed_from": "0.24mm Optimal @EOS Giga 0.6 nozzle",
"name": "0.24mm Optimal @Elegoo Giga 0.6 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle",
"layer_height": "0.28",
"instantiation": "true",
"renamed_from": "0.28mm Extra Draft @EOS Giga 0.4 nozzle",
"name": "0.28mm Extra Draft @Elegoo Giga 0.4 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.50mm Standard @Elegoo Giga 1.0 nozzle",
"layer_height": "0.3",
"instantiation": "true",
"renamed_from": "0.30mm Fine @EOS Giga 1.0 nozzle",
"name": "0.30mm Fine @Elegoo Giga 1.0 nozzle"
}

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "PEOSG06030",
"instantiation": "true",
"renamed_from": "0.30mm Standard @EOS Giga 0.6 nozzle",
"default_acceleration": "3000",
"filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode",
"initial_layer_acceleration": "1000",

View File

@@ -4,6 +4,5 @@
"wall_sequence": "inner-outer-inner wall",
"reduce_crossing_wall": "1",
"instantiation": "true",
"renamed_from": "0.30mm Strength @EOS Giga 0.6 nozzle",
"wall_loops": "5"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle",
"layer_height": "0.32",
"instantiation": "true",
"renamed_from": "0.32mm Optimal @EOS Giga 0.8 nozzle",
"name": "0.32mm Optimal @Elegoo Giga 0.8 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle",
"layer_height": "0.36",
"instantiation": "true",
"renamed_from": "0.36mm Draft @EOS Giga 0.6 nozzle",
"name": "0.36mm Draft @Elegoo Giga 0.6 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.50mm Standard @Elegoo Giga 1.0 nozzle",
"layer_height": "0.4",
"instantiation": "true",
"renamed_from": "0.40mm Optimal @EOS Giga 1.0 nozzle",
"name": "0.40mm Optimal @Elegoo Giga 1.0 nozzle"
}

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "PEOSG08040",
"instantiation": "true",
"renamed_from": "0.40mm Standard @EOS Giga 0.8 nozzle",
"default_acceleration": "3000",
"filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode",
"initial_layer_acceleration": "1000",

View File

@@ -2,6 +2,5 @@
"inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle",
"layer_height": "0.42",
"instantiation": "true",
"renamed_from": "0.42mm Extra Draft @EOS Giga 0.6 nozzle",
"name": "0.42mm Extra Draft @Elegoo Giga 0.6 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle",
"layer_height": "0.48",
"instantiation": "true",
"renamed_from": "0.48mm Draft @EOS Giga 0.8 nozzle",
"name": "0.48mm Draft @Elegoo Giga 0.8 nozzle"
}

View File

@@ -4,7 +4,6 @@
"from": "system",
"setting_id": "PEOSG10050",
"instantiation": "true",
"renamed_from": "0.50mm Standard @EOS Giga 1.0 nozzle",
"default_acceleration": "3000",
"filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode",
"initial_layer_acceleration": "1000",

View File

@@ -1,6 +1,5 @@
{
"inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle",
"instantiation": "true",
"renamed_from": "0.56mm Extra Draft @EOS Giga 0.8 nozzle",
"name": "0.56mm Extra Draft @Elegoo Giga 0.8 nozzle"
}

View File

@@ -2,6 +2,5 @@
"inherits": "0.50mm Standard @Elegoo Giga 1.0 nozzle",
"layer_height": "0.6",
"instantiation": "true",
"renamed_from": "0.60mm Draft @EOS Giga 1.0 nozzle",
"name": "0.60mm Draft @Elegoo Giga 1.0 nozzle"
}

View File

@@ -1,6 +1,6 @@
{
"name": "OrcaFilamentLibrary",
"version": "02.04.00.02",
"version": "02.04.00.01",
"force_update": "0",
"description": "Orca Filament Library",
"filament_list": [

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEABSS00",
"instantiation": "true",
"renamed_from": "Elegoo ABS",
"fan_max_speed": [
"40"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEASACFS00",
"instantiation": "true",
"renamed_from": "Elegoo ASA-CF",
"pressure_advance": [
"0.04"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPAHTCFS00",
"instantiation": "true",
"renamed_from": "Elegoo PAHT-CF",
"close_fan_the_first_x_layers": [
"3"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPCS00",
"instantiation": "true",
"renamed_from": "Elegoo PC",
"pressure_advance": [
"0.052"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPCFRS00",
"instantiation": "true",
"renamed_from": "Elegoo PC-FR",
"pressure_advance": [
"0.05"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPETCFS00",
"instantiation": "true",
"renamed_from": "Elegoo PET-CF",
"pressure_advance": [
"0.05"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPETGS00",
"instantiation": "true",
"renamed_from": "Elegoo PETG",
"pressure_advance": [
"0.05"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OERPETGHFS00",
"instantiation": "true",
"renamed_from": "Elegoo PETG HF",
"pressure_advance": [
"0.052"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPETGTRANSS00",
"instantiation": "true",
"renamed_from": "Elegoo PETG Translucent",
"pressure_advance": [
"0.052"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPETGCFS00",
"instantiation": "true",
"renamed_from": "Elegoo PETG-CF",
"pressure_advance": [
"0.052"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPETGFS00",
"instantiation": "true",
"renamed_from": "Elegoo PETG-GF",
"pressure_advance": [
"0.052"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLABASICS00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Basic",
"nozzle_temperature": [
"220"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLAGALAXYS00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Galaxy",
"fan_min_speed": [
"80"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLAGLOWS00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Glow",
"pressure_advance": [
"0.04"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLAMARBLES00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Marble",
"fan_min_speed": [
"80"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLASPARKLES00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Sparkle",
"fan_min_speed": [
"80"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLATRA2S00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Translucent2",
"pressure_advance": [
"0.04"
],

View File

@@ -5,7 +5,6 @@
"from": "system",
"setting_id": "OEPLAWOODS00",
"instantiation": "true",
"renamed_from": "Elegoo PLA Wood",
"fan_min_speed": [
"80"
],

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