Compare commits

..

No commits in common. "master" and "v5.2.133" have entirely different histories.

592 changed files with 17947 additions and 45681 deletions

View File

@ -11,16 +11,16 @@ jobs:
strategy:
fail-fast: false
matrix:
node-version: [20, 22, 24, 25]
node-version: [20, 22, 23]
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}

View File

@ -18,18 +18,18 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
queries: security-and-quality
- name: Autobuild CodeQL
uses: github/codeql-action/autobuild@v4
uses: github/codeql-action/autobuild@v3
- name: Perform CodeQL analysis
uses: github/codeql-action/analyze@v4
uses: github/codeql-action/analyze@v3

View File

@ -25,12 +25,12 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
- name: Use Python 3.14
uses: actions/setup-python@v6
- name: Use Python 3.13
uses: actions/setup-python@v5
with:
python-version: '3.14'
python-version: '3.13'
cache: 'pip'
- name: Install Fluent dependencies

View File

@ -36,22 +36,22 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: npm ci
- name: Use Python 3.14
uses: actions/setup-python@v6
- name: Use Python 3.13
uses: actions/setup-python@v5
with:
python-version: '3.14'
python-version: '3.13'
cache: 'pip'
- name: Install Fonttools

View File

@ -15,12 +15,12 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
@ -30,5 +30,5 @@ jobs:
- name: Run lint
run: npx gulp lint
- name: Run lint-mozcentral
run: npx gulp lint-mozcentral
- name: Run lint-chromium
run: npx gulp lint-chromium

View File

@ -1,31 +0,0 @@
name: Prefs tests
on: [push, pull_request]
permissions:
contents: read
jobs:
test:
name: Test
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node-version: [lts/*]
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node-version }}
- name: Install dependencies
run: npm ci
- name: Run prefs tests
run: npx gulp prefstest

View File

@ -17,12 +17,12 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
registry-url: 'https://registry.npmjs.org'
@ -34,4 +34,6 @@ jobs:
run: npx gulp dist
- name: Publish the `pdfjs-dist` library to NPM
run: npm publish ./build/dist
run: npm publish ./build/dist --provenance
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

View File

@ -17,12 +17,12 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
@ -49,7 +49,7 @@ jobs:
INPUT_PATH: build/gh-pages
- name: Upload the website
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v4
with:
name: github-pages
path: ${{ runner.temp }}/website.tar

View File

@ -15,12 +15,12 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v6
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
@ -28,4 +28,4 @@ jobs:
run: npm ci
- name: Run types tests
run: npx gulp types
run: npx gulp typestest

1
.gitignore vendored
View File

@ -7,4 +7,3 @@ Makefile
node_modules/
examples/node/svgdump/
examples/node/pdf2png/*.png
.vscode/

View File

@ -9,17 +9,10 @@
"overrides": [
{
"files": ["tsconfig.json", ".prettierrc"],
"options": {
"parser": "json"
}
files: ["tsconfig.json"],
options: {
parser: "json",
},
},
{
"files": ["**/*.html"],
"options": {
"parser": "html",
"printWidth": 160
}
}
]
}

View File

@ -17,9 +17,9 @@
"float": ["inline-start", "inline-end"]
},
"length-zero-no-unit": [true, {
"ignore": ["custom-properties"]
ignore: ["custom-properties"]
}],
"selector-pseudo-element-colon-notation": "double",
"shorthand-property-no-redundant-values": true
}
"shorthand-property-no-redundant-values": true,
},
}

204
AGENTS.md
View File

@ -1,204 +0,0 @@
## Overview
PDF.js is a Portable Document Format (PDF) viewer built with JavaScript, HTML5 Canvas, and CSS. It's a Mozilla project that provides a general-purpose, web standards-based platform for parsing and rendering PDFs without requiring native code or plugins.
## Common Commands
### Development Server
```bash
npx gulp server
```
Then open http://localhost:8888/web/viewer.html to view the PDF viewer. Test PDFs are available at http://localhost:8888/test/pdfs/?frame
### Building
Build for modern browsers:
```bash
npx gulp generic
```
This generates `pdf.js` and `pdf.worker.js` in `build/generic/build/`.
Build for distribution (creates pdfjs-dist package):
```bash
npx gulp dist
npx gulp dist-install # Build and install locally
```
### Testing
Run all tests:
```bash
npx gulp test
```
Run unit tests only:
```bash
npx gulp unittest
```
Run integration tests (browser-based tests using Puppeteer):
```bash
npx gulp integrationtest
```
Run font tests:
```bash
npx gulp fonttest
```
Run a single test file by modifying test/test_manifest.json or using test runner options.
### Linting and Formatting
Lint JavaScript:
```bash
npx gulp lint
```
Format code (uses Prettier and ESLint):
```bash
npx eslint --fix <file>
```
### Type Checking
Run TypeScript type checking:
```bash
npx gulp typestest
```
## Architecture
### High-Level Structure
PDF.js has a multi-layer architecture that separates concerns between PDF parsing, rendering, and UI:
#### 1. Core Layer (`src/core/`)
The core layer handles PDF parsing and interpretation. Key responsibilities:
- **PDF parsing**: Parsing PDF structure, cross-reference tables, streams
- **Font handling**: CFF, TrueType, Type1 font parsing and conversion (`font.js`, `fonts.js`, `cff_*.js`, `type1_*.js`)
- **Image decoding**: JPEG, JBIG2, JPX/JPEG2000 decoders
- **Operators**: Processing PDF drawing operators (`operator_list.js`, `evaluator.js`)
- **XFA Forms**: XML Forms Architecture support (`src/core/xfa/`)
- **Color spaces**: ICC profiles, device color spaces (`colorspace.js`, `icc_colorspace.js`)
- Runs in a Web Worker for performance isolation
Entry point: `src/pdf.worker.js`
#### 2. Display Layer (`src/display/`)
The display layer provides the API for rendering PDFs to canvas and managing documents. Key components:
- **API**: Main public API (`api.js`) - `PDFDocumentProxy`, `PDFPageProxy`, `getDocument()`
- **Canvas rendering**: Renders PDF operations to HTML5 canvas (`canvas.js`)
- **Text layer**: Extracts and positions text for selection/search (`text_layer.js`)
- **Annotation layer**: Renders and handles PDF annotations (`annotation_layer.js`)
- **Editor layer**: Supports PDF editing (annotations, highlights, stamps) (`editor/`)
- **Metadata**: Parses XMP metadata (`metadata.js`)
- **Streams**: Handles PDF data fetching (fetch, network, node) (`fetch_stream.js`, `network.js`, `node_stream.js`)
Entry point: `src/pdf.js`
#### 3. Scripting Layer (`src/scripting_api/`)
Implements JavaScript execution for interactive PDFs (form calculations, validations, button actions).
- Sandboxed execution environment
- Implements Acrobat JavaScript API objects (App, Doc, Field, etc.)
Entry points: `src/pdf.scripting.js`, `src/pdf.sandbox.js`
#### 4. Web Viewer (`web/`)
The complete PDF viewer application with UI. Key components:
- **Main app**: Application orchestration (`app.js`)
- **Viewer**: Page rendering and layout (`pdf_viewer.js`, `pdf_page_view.js`)
- **Toolbar**: Zoom, page navigation, print, download controls
- **Sidebar**: Thumbnails, outlines, attachments (`pdf_sidebar.js`, `pdf_thumbnail_view.js`, `pdf_outline_viewer.js`)
- **Find controller**: Text search functionality (`pdf_find_controller.js`)
- **Annotation editors**: UI for creating/editing annotations (`annotation_editor_layer_builder.js`)
- **Presentation mode**: Full-screen presentation (`pdf_presentation_mode.js`)
Entry point: `web/viewer.html` + `web/viewer.mjs`
#### 5. Shared Utilities (`src/shared/`)
Common utilities used across layers:
- **Message handling**: Worker communication (`message_handler.js`)
- **Utilities**: Common functions and constants (`util.js`)
- **Image utilities**: Image processing helpers (`image_utils.js`)
### Worker Communication
PDF.js uses a Web Worker architecture:
- Main thread (`display` layer) communicates with worker thread (`core` layer) via `MessageHandler`
- Keeps PDF parsing off the main thread for better performance
- Messages include: page rendering requests, text content extraction, metadata queries
### Build System
- Uses **Gulp** for build orchestration (`gulpfile.mjs`)
- **Webpack** bundles modules into browser-compatible formats
- **Babel** transpiles for browser compatibility (configurable targets in gulpfile)
- Preprocessor replaces build-time constants (e.g., `typeof PDFJSDev !== "undefined"` checks)
- Multiple build targets: generic, components, minified, legacy (older browser support)
### External Dependencies
Located in `external/`:
- **bcmaps**: Binary CMaps for CJK fonts
- **standard_fonts**: Core 14 PDF fonts metrics
- **cmapscompress**: Tools for compressing CMaps
- **openjpeg**: JPEG2000 decoder (WASM)
- **quickjs**: JavaScript engine for sandboxed execution
### Translations
Translations in `l10n/` are imported from Mozilla Firefox Nightly. Only the file l10n/en-US/viewer.ftl can be updated.
## Development Notes
### Adding New Features
When adding features that span multiple layers:
1. Start with the `core` layer if parsing/interpretation changes are needed
2. Update the `display` layer API if new capabilities need exposure
3. Modify the `web` viewer if UI changes are required
4. Ensure worker communication handles new message types
### Preprocessor Directives
Code uses preprocessor checks for build-time conditionals:
```javascript
if (typeof PDFJSDev !== "undefined" && PDFJSDev.test("GENERIC")) {
// Generic build-specific code
}
```
Common flags: `GENERIC`, `MOZCENTRAL`, `CHROME`, `MINIFIED`, `TESTING`, `LIB`, `SKIP_BABEL`, `IMAGE_DECODERS`
### Testing
- Unit tests use Jasmine framework (`test/unit/`)
- Integration tests use Puppeteer for browser automation (`test/integration/`)
- Test PDFs downloaded from manifest (`test/test_manifest.json`)
- Reference images for visual regression testing (`test/ref/`)
### Code Style
- Uses ESLint with custom configuration (`eslint.config.mjs`)
- Prettier for formatting
- Stylelint for CSS
- No semicolons required (ASI enabled)
- Single quotes for strings
### Pull Request Process
- Keep PRs focused on a single issue
- Provide a test PDF if the issue is PDF-specific
- Ensure tests pass (`npx gulp test`)
- Run linting (`npx gulp lint`)
- Follow existing code patterns
- Don't modify translations directly (they come from Firefox)
### Performance Considerations
- Core parsing runs in a Web Worker - keep main thread work minimal
- Canvas rendering can be expensive - use appropriate scale factors
- Text layer generation is separate from rendering - can be deferred
- Annotation layer is optional - only enable when needed

View File

@ -1 +0,0 @@
@AGENTS.md

View File

@ -31,12 +31,10 @@ export default [
"**/docs/",
"**/node_modules/",
"external/bcmaps/",
"external/brotli/",
"external/builder/fixtures/",
"external/builder/fixtures_babel/",
"external/openjpeg/",
"external/qcms/",
"external/jbig2/",
"external/quickjs/",
"test/stats/results/",
"test/tmp/",
@ -118,7 +116,6 @@ export default [
"web",
"fluent-bundle",
"fluent-dom",
"postcss-values-parser",
// See https://github.com/firebase/firebase-admin-node/discussions/1359.
"eslint-plugin-perfectionist",
],
@ -129,6 +126,7 @@ export default [
"perfectionist/sort-exports": "error",
"perfectionist/sort-named-exports": "error",
"unicorn/no-abusive-eslint-disable": "error",
"unicorn/no-array-push-push": "error",
"unicorn/no-array-reduce": ["error", { allowSimpleOperations: true }],
"unicorn/no-console-spaces": "error",
"unicorn/no-instanceof-builtins": "error",
@ -136,9 +134,6 @@ export default [
"unicorn/no-new-buffer": "error",
"unicorn/no-single-promise-in-promise-methods": "error",
"unicorn/no-typeof-undefined": ["error", { checkGlobalVariables: false }],
"unicorn/no-unnecessary-array-flat-depth": "error",
"unicorn/no-unnecessary-array-splice-count": "error",
"unicorn/no-unnecessary-slice-end": "error",
"unicorn/no-useless-promise-resolve-reject": "error",
"unicorn/no-useless-spread": "error",
"unicorn/prefer-array-find": "error",
@ -150,7 +145,6 @@ export default [
"unicorn/prefer-date-now": "error",
"unicorn/prefer-dom-node-append": "error",
"unicorn/prefer-dom-node-remove": "error",
"unicorn/prefer-import-meta-properties": "error",
"unicorn/prefer-includes": "error",
"unicorn/prefer-logical-operator-over-ternary": "error",
"unicorn/prefer-modern-dom-apis": "error",
@ -158,7 +152,6 @@ export default [
"unicorn/prefer-negative-index": "error",
"unicorn/prefer-optional-catch-binding": "error",
"unicorn/prefer-regexp-test": "error",
"unicorn/prefer-single-call": "error",
"unicorn/prefer-string-replace-all": "error",
"unicorn/prefer-string-starts-ends-with": "error",
"unicorn/prefer-ternary": ["error", "only-single-line"],
@ -310,11 +303,6 @@ export default [
selector: "NewExpression[callee.name='Name']",
message: "Use `Name.get()` rather than `new Name()`.",
},
{
selector: "NewExpression[callee.name='ObjectLoader']",
message:
"Use `ObjectLoader.load()` rather than `new ObjectLoader()`.",
},
{
selector: "NewExpression[callee.name='Ref']",
message: "Use `Ref.get()` rather than `new Ref()`.",

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<!--
Copyright 2014 Mozilla Foundation
@ -15,29 +15,29 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
<html dir="ltr" mozdisallowselectionprint>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta name="google" content="notranslate" />
<title>PDF.js page viewer using built components</title>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="google" content="notranslate">
<title>PDF.js page viewer using built components</title>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
</style>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
</style>
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css" />
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css">
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
</head>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
</head>
<body tabindex="1">
<div id="pageContainer" class="pdfViewer singlePageView"></div>
<body tabindex="1">
<div id="pageContainer" class="pdfViewer singlePageView"></div>
<script src="pageviewer.mjs" type="module"></script>
</body>
<script src="pageviewer.mjs" type="module"></script>
</body>
</html>

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<!--
Copyright 2014 Mozilla Foundation
@ -15,37 +15,37 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
<html dir="ltr" mozdisallowselectionprint>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta name="google" content="notranslate" />
<title>PDF.js viewer using built components</title>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="google" content="notranslate">
<title>PDF.js viewer using built components</title>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
#viewerContainer {
overflow: auto;
position: absolute;
width: 100%;
height: 100%;
}
</style>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
#viewerContainer {
overflow: auto;
position: absolute;
width: 100%;
height: 100%;
}
</style>
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css" />
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css">
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
</head>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
</head>
<body tabindex="1">
<div id="viewerContainer">
<div id="viewer" class="pdfViewer"></div>
</div>
<body tabindex="1">
<div id="viewerContainer">
<div id="viewer" class="pdfViewer"></div>
</div>
<script src="simpleviewer.mjs" type="module"></script>
</body>
<script src="simpleviewer.mjs" type="module"></script>
</body>
</html>

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<!--
Copyright 2014 Mozilla Foundation
@ -15,37 +15,37 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
<html dir="ltr" mozdisallowselectionprint>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta name="google" content="notranslate" />
<title>PDF.js Single Page Viewer using built components</title>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="google" content="notranslate">
<title>PDF.js Single Page Viewer using built components</title>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
#viewerContainer {
overflow: auto;
position: absolute;
width: 100%;
height: 100%;
}
</style>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
#viewerContainer {
overflow: auto;
position: absolute;
width: 100%;
height: 100%;
}
</style>
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css" />
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css">
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
</head>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
</head>
<body tabindex="1">
<div id="viewerContainer">
<div id="viewer" class="pdfViewer"></div>
</div>
<body tabindex="1">
<div id="viewerContainer">
<div id="viewer" class="pdfViewer"></div>
</div>
<script src="singlepageviewer.mjs" type="module"></script>
</body>
<script src="singlepageviewer.mjs" type="module"></script>
</body>
</html>

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<!--
Copyright 2018 Mozilla Foundation
@ -15,26 +15,26 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
<html dir="ltr" mozdisallowselectionprint>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta name="google" content="notranslate" />
<title>PDF.js standalone JpegImage parser</title>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="google" content="notranslate">
<title>PDF.js standalone JpegImage parser</title>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
</style>
<style>
body {
background-color: #808080;
margin: 0;
padding: 0;
}
</style>
<script src="../../node_modules/pdfjs-dist/image_decoders/pdf.image_decoders.mjs" type="module"></script>
</head>
<script src="../../node_modules/pdfjs-dist/image_decoders/pdf.image_decoders.mjs" type="module"></script>
</head>
<body tabindex="1">
<canvas id="jpegCanvas" width="0" height="0"></canvas>
<body tabindex="1">
<canvas id="jpegCanvas" width="0" height="0"></canvas>
<script src="jpeg_viewer.mjs" type="module"></script>
</body>
<script src="jpeg_viewer.mjs" type="module"></script>
</body>
</html>

View File

@ -1,71 +1,76 @@
<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>'Hello, world!' example</title>
</head>
<body>
<h1>'Hello, world!' example</h1>
<head>
<meta charset="UTF-8">
<title>'Hello, world!' example</title>
</head>
<body>
<canvas id="the-canvas" style="border: 1px solid black; direction: ltr"></canvas>
<h1>'Hello, world!' example</h1>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<canvas id="the-canvas" style="border: 1px solid black; direction: ltr;"></canvas>
<script id="script" type="module">
//
// If absolute URL from the remote server is provided, configure the CORS
// header on that server.
//
const url = "./helloworld.pdf";
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
//
// The workerSrc property shall be specified.
//
pdfjsLib.GlobalWorkerOptions.workerSrc = "../../node_modules/pdfjs-dist/build/pdf.worker.mjs";
<script id="script" type="module">
//
// If absolute URL from the remote server is provided, configure the CORS
// header on that server.
//
const url = './helloworld.pdf';
//
// Asynchronous download PDF
//
const loadingTask = pdfjsLib.getDocument(url);
const pdf = await loadingTask.promise;
//
// Fetch the first page
//
const page = await pdf.getPage(1);
const scale = 1.5;
const viewport = page.getViewport({ scale });
// Support HiDPI-screens.
const outputScale = window.devicePixelRatio || 1;
//
// The workerSrc property shall be specified.
//
pdfjsLib.GlobalWorkerOptions.workerSrc =
'../../node_modules/pdfjs-dist/build/pdf.worker.mjs';
//
// Prepare canvas using PDF page dimensions
//
const canvas = document.getElementById("the-canvas");
const context = canvas.getContext("2d");
//
// Asynchronous download PDF
//
const loadingTask = pdfjsLib.getDocument(url);
const pdf = await loadingTask.promise;
//
// Fetch the first page
//
const page = await pdf.getPage(1);
const scale = 1.5;
const viewport = page.getViewport({ scale });
// Support HiDPI-screens.
const outputScale = window.devicePixelRatio || 1;
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
canvas.style.width = Math.floor(viewport.width) + "px";
canvas.style.height = Math.floor(viewport.height) + "px";
//
// Prepare canvas using PDF page dimensions
//
const canvas = document.getElementById("the-canvas");
const context = canvas.getContext("2d");
const transform = outputScale !== 1 ? [outputScale, 0, 0, outputScale, 0, 0] : null;
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
canvas.style.width = Math.floor(viewport.width) + "px";
canvas.style.height = Math.floor(viewport.height) + "px";
//
// Render PDF page into canvas context
//
const renderContext = {
canvasContext: context,
transform,
viewport,
};
page.render(renderContext);
</script>
const transform = outputScale !== 1
? [outputScale, 0, 0, outputScale, 0, 0]
: null;
<hr />
<h2>JavaScript code:</h2>
<pre id="code"></pre>
<script>
document.getElementById("code").textContent = document.getElementById("script").text;
</script>
</body>
//
// Render PDF page into canvas context
//
const renderContext = {
canvasContext: context,
transform,
viewport,
};
page.render(renderContext);
</script>
<hr>
<h2>JavaScript code:</h2>
<pre id="code"></pre>
<script>
document.getElementById('code').textContent =
document.getElementById('script').text;
</script>
</body>
</html>

View File

@ -1,77 +1,81 @@
<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>'Hello, world!' base64 example</title>
</head>
<body>
<h1>'Hello, world!' example</h1>
<head>
<meta charset="UTF-8">
<title>'Hello, world!' base64 example</title>
</head>
<body>
<canvas id="the-canvas" style="border: 1px solid black; direction: ltr"></canvas>
<h1>'Hello, world!' example</h1>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<canvas id="the-canvas" style="border: 1px solid black; direction: ltr;"></canvas>
<script id="script" type="module">
// atob() is used to convert base64 encoded PDF to binary-like data.
// (See also https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/
// Base64_encoding_and_decoding.)
var pdfData = atob(
"JVBERi0xLjcKCjEgMCBvYmogICUgZW50cnkgcG9pbnQKPDwKICAvVHlwZSAvQ2F0YWxvZwog" +
"IC9QYWdlcyAyIDAgUgo+PgplbmRvYmoKCjIgMCBvYmoKPDwKICAvVHlwZSAvUGFnZXMKICAv" +
"TWVkaWFCb3ggWyAwIDAgMjAwIDIwMCBdCiAgL0NvdW50IDEKICAvS2lkcyBbIDMgMCBSIF0K" +
"Pj4KZW5kb2JqCgozIDAgb2JqCjw8CiAgL1R5cGUgL1BhZ2UKICAvUGFyZW50IDIgMCBSCiAg" +
"L1Jlc291cmNlcyA8PAogICAgL0ZvbnQgPDwKICAgICAgL0YxIDQgMCBSIAogICAgPj4KICA+" +
"PgogIC9Db250ZW50cyA1IDAgUgo+PgplbmRvYmoKCjQgMCBvYmoKPDwKICAvVHlwZSAvRm9u" +
"dAogIC9TdWJ0eXBlIC9UeXBlMQogIC9CYXNlRm9udCAvVGltZXMtUm9tYW4KPj4KZW5kb2Jq" +
"Cgo1IDAgb2JqICAlIHBhZ2UgY29udGVudAo8PAogIC9MZW5ndGggNDQKPj4Kc3RyZWFtCkJU" +
"CjcwIDUwIFRECi9GMSAxMiBUZgooSGVsbG8sIHdvcmxkISkgVGoKRVQKZW5kc3RyZWFtCmVu" +
"ZG9iagoKeHJlZgowIDYKMDAwMDAwMDAwMCA2NTUzNSBmIAowMDAwMDAwMDEwIDAwMDAwIG4g" +
"CjAwMDAwMDAwNzkgMDAwMDAgbiAKMDAwMDAwMDE3MyAwMDAwMCBuIAowMDAwMDAwMzAxIDAw" +
"MDAwIG4gCjAwMDAwMDAzODAgMDAwMDAgbiAKdHJhaWxlcgo8PAogIC9TaXplIDYKICAvUm9v" +
"dCAxIDAgUgo+PgpzdGFydHhyZWYKNDkyCiUlRU9G"
);
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
//
// The workerSrc property shall be specified.
//
pdfjsLib.GlobalWorkerOptions.workerSrc = "../../node_modules/pdfjs-dist/build/pdf.worker.mjs";
<script id="script" type="module">
// atob() is used to convert base64 encoded PDF to binary-like data.
// (See also https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/
// Base64_encoding_and_decoding.)
var pdfData = atob(
'JVBERi0xLjcKCjEgMCBvYmogICUgZW50cnkgcG9pbnQKPDwKICAvVHlwZSAvQ2F0YWxvZwog' +
'IC9QYWdlcyAyIDAgUgo+PgplbmRvYmoKCjIgMCBvYmoKPDwKICAvVHlwZSAvUGFnZXMKICAv' +
'TWVkaWFCb3ggWyAwIDAgMjAwIDIwMCBdCiAgL0NvdW50IDEKICAvS2lkcyBbIDMgMCBSIF0K' +
'Pj4KZW5kb2JqCgozIDAgb2JqCjw8CiAgL1R5cGUgL1BhZ2UKICAvUGFyZW50IDIgMCBSCiAg' +
'L1Jlc291cmNlcyA8PAogICAgL0ZvbnQgPDwKICAgICAgL0YxIDQgMCBSIAogICAgPj4KICA+' +
'PgogIC9Db250ZW50cyA1IDAgUgo+PgplbmRvYmoKCjQgMCBvYmoKPDwKICAvVHlwZSAvRm9u' +
'dAogIC9TdWJ0eXBlIC9UeXBlMQogIC9CYXNlRm9udCAvVGltZXMtUm9tYW4KPj4KZW5kb2Jq' +
'Cgo1IDAgb2JqICAlIHBhZ2UgY29udGVudAo8PAogIC9MZW5ndGggNDQKPj4Kc3RyZWFtCkJU' +
'CjcwIDUwIFRECi9GMSAxMiBUZgooSGVsbG8sIHdvcmxkISkgVGoKRVQKZW5kc3RyZWFtCmVu' +
'ZG9iagoKeHJlZgowIDYKMDAwMDAwMDAwMCA2NTUzNSBmIAowMDAwMDAwMDEwIDAwMDAwIG4g' +
'CjAwMDAwMDAwNzkgMDAwMDAgbiAKMDAwMDAwMDE3MyAwMDAwMCBuIAowMDAwMDAwMzAxIDAw' +
'MDAwIG4gCjAwMDAwMDAzODAgMDAwMDAgbiAKdHJhaWxlcgo8PAogIC9TaXplIDYKICAvUm9v' +
'dCAxIDAgUgo+PgpzdGFydHhyZWYKNDkyCiUlRU9G');
// Opening PDF by passing its binary data as a string. It is still preferable
// to use Uint8Array, but string or array-like structure will work too.
var loadingTask = pdfjsLib.getDocument({ data: pdfData });
var pdf = await loadingTask.promise;
// Fetch the first page.
var page = await pdf.getPage(1);
var scale = 1.5;
var viewport = page.getViewport({ scale: scale });
// Support HiDPI-screens.
var outputScale = window.devicePixelRatio || 1;
//
// The workerSrc property shall be specified.
//
pdfjsLib.GlobalWorkerOptions.workerSrc =
'../../node_modules/pdfjs-dist/build/pdf.worker.mjs';
// Prepare canvas using PDF page dimensions.
var canvas = document.getElementById("the-canvas");
var context = canvas.getContext("2d");
// Opening PDF by passing its binary data as a string. It is still preferable
// to use Uint8Array, but string or array-like structure will work too.
var loadingTask = pdfjsLib.getDocument({ data: pdfData, });
var pdf = await loadingTask.promise;
// Fetch the first page.
var page = await pdf.getPage(1);
var scale = 1.5;
var viewport = page.getViewport({ scale: scale, });
// Support HiDPI-screens.
var outputScale = window.devicePixelRatio || 1;
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
canvas.style.width = Math.floor(viewport.width) + "px";
canvas.style.height = Math.floor(viewport.height) + "px";
// Prepare canvas using PDF page dimensions.
var canvas = document.getElementById('the-canvas');
var context = canvas.getContext('2d');
var transform = outputScale !== 1 ? [outputScale, 0, 0, outputScale, 0, 0] : null;
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
canvas.style.width = Math.floor(viewport.width) + "px";
canvas.style.height = Math.floor(viewport.height) + "px";
// Render PDF page into canvas context.
var renderContext = {
canvasContext: context,
transform,
viewport,
};
page.render(renderContext);
</script>
var transform = outputScale !== 1
? [outputScale, 0, 0, outputScale, 0, 0]
: null;
<hr />
<h2>JavaScript code:</h2>
<pre id="code"></pre>
<script>
document.getElementById("code").textContent = document.getElementById("script").text;
</script>
</body>
// Render PDF page into canvas context.
var renderContext = {
canvasContext: context,
transform,
viewport,
};
page.render(renderContext);
</script>
<hr>
<h2>JavaScript code:</h2>
<pre id="code"></pre>
<script>
document.getElementById('code').textContent =
document.getElementById('script').text;
</script>
</body>
</html>

View File

@ -1,134 +1,139 @@
<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Previous/Next example</title>
</head>
<body>
<h1>'Previous/Next' example</h1>
<head>
<meta charset="UTF-8">
<title>Previous/Next example</title>
</head>
<body>
<div>
<button id="prev" type="button">Previous</button>
<button id="next" type="button">Next</button>
&nbsp; &nbsp;
<span>Page: <span id="page_num"></span> / <span id="page_count"></span></span>
</div>
<h1>'Previous/Next' example</h1>
<div>
<canvas id="the-canvas" style="border: 1px solid black; direction: ltr"></canvas>
</div>
<div>
<button id="prev" type="button">Previous</button>
<button id="next" type="button">Next</button>
&nbsp; &nbsp;
<span>Page: <span id="page_num"></span> / <span id="page_count"></span></span>
</div>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<div>
<canvas id="the-canvas" style="border: 1px solid black; direction: ltr;"></canvas>
</div>
<script id="script" type="module">
//
// If absolute URL from the remote server is provided, configure the CORS
// header on that server.
//
var url = "../../web/compressed.tracemonkey-pldi-09.pdf";
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
//
// In cases when the pdf.worker.js is located at the different folder than the
// PDF.js's one, or the PDF.js is executed via eval(), the workerSrc property
// shall be specified.
//
pdfjsLib.GlobalWorkerOptions.workerSrc = "../../node_modules/pdfjs-dist/build/pdf.worker.mjs";
<script id="script" type="module">
//
// If absolute URL from the remote server is provided, configure the CORS
// header on that server.
//
var url = '../../web/compressed.tracemonkey-pldi-09.pdf';
var pdfDoc = null,
pageNum = 1,
pageRendering = false,
pageNumPending = null,
scale = 0.8,
canvas = document.getElementById("the-canvas"),
ctx = canvas.getContext("2d");
//
// In cases when the pdf.worker.js is located at the different folder than the
// PDF.js's one, or the PDF.js is executed via eval(), the workerSrc property
// shall be specified.
//
pdfjsLib.GlobalWorkerOptions.workerSrc =
'../../node_modules/pdfjs-dist/build/pdf.worker.mjs';
/**
* Get page info from document, resize canvas accordingly, and render page.
* @param num Page number.
*/
function renderPage(num) {
pageRendering = true;
// Using promise to fetch the page
pdfDoc.getPage(num).then(function (page) {
var viewport = page.getViewport({ scale: scale });
// Support HiDPI-screens.
var outputScale = window.devicePixelRatio || 1;
var pdfDoc = null,
pageNum = 1,
pageRendering = false,
pageNumPending = null,
scale = 0.8,
canvas = document.getElementById('the-canvas'),
ctx = canvas.getContext('2d');
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
canvas.style.width = Math.floor(viewport.width) + "px";
canvas.style.height = Math.floor(viewport.height) + "px";
/**
* Get page info from document, resize canvas accordingly, and render page.
* @param num Page number.
*/
function renderPage(num) {
pageRendering = true;
// Using promise to fetch the page
pdfDoc.getPage(num).then(function(page) {
var viewport = page.getViewport({ scale: scale, });
// Support HiDPI-screens.
var outputScale = window.devicePixelRatio || 1;
var transform = outputScale !== 1 ? [outputScale, 0, 0, outputScale, 0, 0] : null;
canvas.width = Math.floor(viewport.width * outputScale);
canvas.height = Math.floor(viewport.height * outputScale);
canvas.style.width = Math.floor(viewport.width) + "px";
canvas.style.height = Math.floor(viewport.height) + "px";
// Render PDF page into canvas context
var renderContext = {
canvasContext: ctx,
transform: transform,
viewport: viewport,
};
var renderTask = page.render(renderContext);
var transform = outputScale !== 1
? [outputScale, 0, 0, outputScale, 0, 0]
: null;
// Wait for rendering to finish
renderTask.promise.then(function () {
pageRendering = false;
if (pageNumPending !== null) {
// New page rendering is pending
renderPage(pageNumPending);
pageNumPending = null;
}
});
});
// Render PDF page into canvas context
var renderContext = {
canvasContext: ctx,
transform: transform,
viewport: viewport,
};
var renderTask = page.render(renderContext);
// Update page counters
document.getElementById("page_num").textContent = num;
}
/**
* If another page rendering in progress, waits until the rendering is
* finished. Otherwise, executes rendering immediately.
*/
function queueRenderPage(num) {
if (pageRendering) {
pageNumPending = num;
} else {
renderPage(num);
// Wait for rendering to finish
renderTask.promise.then(function () {
pageRendering = false;
if (pageNumPending !== null) {
// New page rendering is pending
renderPage(pageNumPending);
pageNumPending = null;
}
}
});
});
/**
* Displays previous page.
*/
function onPrevPage() {
if (pageNum <= 1) {
return;
}
pageNum--;
queueRenderPage(pageNum);
}
document.getElementById("prev").addEventListener("click", onPrevPage);
// Update page counters
document.getElementById('page_num').textContent = num;
}
/**
* Displays next page.
*/
function onNextPage() {
if (pageNum >= pdfDoc.numPages) {
return;
}
pageNum++;
queueRenderPage(pageNum);
}
document.getElementById("next").addEventListener("click", onNextPage);
/**
* If another page rendering in progress, waits until the rendering is
* finished. Otherwise, executes rendering immediately.
*/
function queueRenderPage(num) {
if (pageRendering) {
pageNumPending = num;
} else {
renderPage(num);
}
}
/**
* Asynchronously downloads PDF.
*/
var loadingTask = pdfjsLib.getDocument(url);
pdfDoc = await loadingTask.promise;
document.getElementById("page_count").textContent = pdfDoc.numPages;
/**
* Displays previous page.
*/
function onPrevPage() {
if (pageNum <= 1) {
return;
}
pageNum--;
queueRenderPage(pageNum);
}
document.getElementById('prev').addEventListener('click', onPrevPage);
// Initial/first page rendering
renderPage(pageNum);
</script>
</body>
/**
* Displays next page.
*/
function onNextPage() {
if (pageNum >= pdfDoc.numPages) {
return;
}
pageNum++;
queueRenderPage(pageNum);
}
document.getElementById('next').addEventListener('click', onNextPage);
/**
* Asynchronously downloads PDF.
*/
var loadingTask = pdfjsLib.getDocument(url);
pdfDoc = await loadingTask.promise;
document.getElementById('page_count').textContent = pdfDoc.numPages;
// Initial/first page rendering
renderPage(pageNum);
</script>
</body>
</html>

View File

@ -1,4 +1,4 @@
<!doctype html>
<!DOCTYPE html>
<!--
Copyright 2016 Mozilla Foundation
@ -16,13 +16,13 @@ limitations under the License.
-->
<html dir="ltr">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>PDF.js viewer</title>
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css" />
<link rel="stylesheet" type="text/css" href="viewer.css" />
<link rel="stylesheet" href="../../node_modules/pdfjs-dist/web/pdf_viewer.css">
<link rel="stylesheet" type="text/css" href="viewer.css">
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="../../node_modules/pdfjs-dist/web/pdf_viewer.mjs" type="module"></script>
@ -46,12 +46,12 @@ limitations under the License.
<button class="toolbarButton pageUp" title="Previous Page" id="previous" type="button"></button>
<button class="toolbarButton pageDown" title="Next Page" id="next" type="button"></button>
<input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1" />
<input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1">
<button class="toolbarButton zoomOut" title="Zoom Out" id="zoomOut" type="button"></button>
<button class="toolbarButton zoomIn" title="Zoom In" id="zoomIn" type="button"></button>
</footer>
<script src="viewer.mjs" type="module"></script>
<script src="viewer.mjs" type="module"></script>
</body>
</html>

View File

@ -46,13 +46,19 @@ const PDFViewerApplication = {
* @returns {Promise} - Returns the promise, which is resolved when document
* is opened.
*/
async open(params) {
open(params) {
if (this.pdfLoadingTask) {
// We need to destroy already opened document.
await this.close();
// We need to destroy already opened document
return this.close().then(
function () {
// ... and repeat the open() call.
return this.open(params);
}.bind(this)
);
}
const { url } = params;
const url = params.url;
const self = this;
this.setTitleUsingUrl(url);
// Loading document.
@ -64,22 +70,24 @@ const PDFViewerApplication = {
});
this.pdfLoadingTask = loadingTask;
loadingTask.onProgress = evt => this.progress(evt.percent);
loadingTask.onProgress = function (progressData) {
self.progress(progressData.loaded / progressData.total);
};
return loadingTask.promise.then(
pdfDocument => {
function (pdfDocument) {
// Document loaded, specifying document for the viewer.
this.pdfDocument = pdfDocument;
this.pdfViewer.setDocument(pdfDocument);
this.pdfLinkService.setDocument(pdfDocument);
this.pdfHistory.initialize({
self.pdfDocument = pdfDocument;
self.pdfViewer.setDocument(pdfDocument);
self.pdfLinkService.setDocument(pdfDocument);
self.pdfHistory.initialize({
fingerprint: pdfDocument.fingerprints[0],
});
this.loadingBar.hide();
this.setTitleUsingMetadata(pdfDocument);
self.loadingBar.hide();
self.setTitleUsingMetadata(pdfDocument);
},
reason => {
function (reason) {
let key = "pdfjs-loading-error";
if (reason instanceof pdfjsLib.InvalidPDFException) {
key = "pdfjs-invalid-file-error";
@ -88,10 +96,10 @@ const PDFViewerApplication = {
? "pdfjs-missing-file-error"
: "pdfjs-unexpected-response-error";
}
this.l10n.get(key).then(msg => {
this.error(msg, { message: reason.message });
self.l10n.get(key).then(msg => {
self.error(msg, { message: reason?.message });
});
this.loadingBar.hide();
self.loadingBar.hide();
}
);
},
@ -101,9 +109,9 @@ const PDFViewerApplication = {
* @returns {Promise} - Returns the promise, which is resolved when all
* destruction is completed.
*/
async close() {
close() {
if (!this.pdfLoadingTask) {
return;
return Promise.resolve();
}
const promise = this.pdfLoadingTask.destroy();
@ -120,7 +128,7 @@ const PDFViewerApplication = {
}
}
await promise;
return promise;
},
get loadingBar() {
@ -144,36 +152,48 @@ const PDFViewerApplication = {
this.setTitle(title);
},
async setTitleUsingMetadata(pdfDocument) {
const { info, metadata } = await pdfDocument.getMetadata();
this.documentInfo = info;
this.metadata = metadata;
setTitleUsingMetadata(pdfDocument) {
const self = this;
pdfDocument.getMetadata().then(function (data) {
const info = data.info,
metadata = data.metadata;
self.documentInfo = info;
self.metadata = metadata;
// Provides some basic debug information
console.log(
`PDF ${pdfDocument.fingerprints[0]} [${info.PDFFormatVersion} ` +
`${(metadata?.get("pdf:producer") || info.Producer || "-").trim()} / ` +
`${(metadata?.get("xmp:creatortool") || info.Creator || "-").trim()}` +
`] (PDF.js: ${pdfjsLib.version || "?"} [${pdfjsLib.build || "?"}])`
);
// Provides some basic debug information
console.log(
"PDF " +
pdfDocument.fingerprints[0] +
" [" +
info.PDFFormatVersion +
" " +
(info.Producer || "-").trim() +
" / " +
(info.Creator || "-").trim() +
"]" +
" (PDF.js: " +
(pdfjsLib.version || "-") +
")"
);
let pdfTitle;
if (metadata && metadata.has("dc:title")) {
const title = metadata.get("dc:title");
// Ghostscript sometimes returns 'Untitled', so prevent setting the
// title to 'Untitled.
if (title !== "Untitled") {
pdfTitle = title;
let pdfTitle;
if (metadata && metadata.has("dc:title")) {
const title = metadata.get("dc:title");
// Ghostscript sometimes returns 'Untitled', so prevent setting the
// title to 'Untitled.
if (title !== "Untitled") {
pdfTitle = title;
}
}
}
if (!pdfTitle && info && info.Title) {
pdfTitle = info.Title;
}
if (!pdfTitle && info && info.Title) {
pdfTitle = info.Title;
}
if (pdfTitle) {
this.setTitle(pdfTitle + " - " + document.title);
}
if (pdfTitle) {
self.setTitle(pdfTitle + " - " + document.title);
}
});
},
setTitle: function pdfViewSetTitle(title) {
@ -203,7 +223,8 @@ const PDFViewerApplication = {
console.error(`${message}\n\n${moreInfoText.join("\n")}`);
},
progress(percent) {
progress: function pdfViewProgress(level) {
const percent = Math.round(level * 100);
// Updating the bar if value increases.
if (percent > this.loadingBar.percent || isNaN(percent)) {
this.loadingBar.percent = percent;

View File

@ -1,13 +1,14 @@
<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<head>
<meta charset="UTF-8">
<title>Text-only PDF.js example</title>
<script src="../../node_modules/pdfjs-dist/build/pdf.mjs" type="module"></script>
<script src="pdf2svg.mjs" type="module"></script>
</head>
<body>
<p>Text-only PDF.js example</p>
<div id="pageContainer" style="display: inline-block; border: solid 1px black"></div>
</body>
</head>
<body>
<p>Text-only PDF.js example</p>
<div id="pageContainer" style="display: inline-block; border: solid 1px black;">
</div>
</body>
</html>

View File

@ -1,11 +1,11 @@
<!doctype html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>webpack example</title>
<script src="../../build/webpack/main.bundle.js"></script>
</head>
<body>
<canvas id="theCanvas"></canvas>
</body>
<head>
<meta charset="UTF-8">
<title>webpack example</title>
<script src="../../build/webpack/main.bundle.js"></script>
</head>
<body>
<canvas id="theCanvas"></canvas>
</body>
</html>

View File

@ -15,171 +15,171 @@ See the License for the specific language governing permissions and
limitations under the License.
-->
<html>
<head>
<meta charset="utf-8" />
<title>PDF.js viewer options</title>
<style>
body {
min-width: 400px; /* a page at the settings page is at least 400px wide */
margin: 14px 17px; /* already added by default in Chrome 40.0.2212.0 */
}
.settings-row {
margin: 1em 0;
}
.checkbox label {
display: inline-flex;
align-items: center;
}
.checkbox label input {
flex-shrink: 0;
}
</style>
</head>
<body>
<div id="settings-boxes"></div>
<button id="reset-button" type="button">Restore default settings</button>
<head>
<meta charset="utf-8">
<title>PDF.js viewer options</title>
<style>
body {
min-width: 400px; /* a page at the settings page is at least 400px wide */
margin: 14px 17px; /* already added by default in Chrome 40.0.2212.0 */
}
.settings-row {
margin: 1em 0;
}
.checkbox label {
display: inline-flex;
align-items: center;
}
.checkbox label input {
flex-shrink: 0;
}
</style>
</head>
<body>
<div id="settings-boxes"></div>
<button id="reset-button" type="button">Restore default settings</button>
<template id="checkbox-template">
<div class="settings-row checkbox">
<label>
<input type="checkbox" />
<span></span>
</label>
</div>
</template>
<template id="checkbox-template">
<div class="settings-row checkbox">
<label>
<input type="checkbox">
<span></span>
</label>
</div>
</template>
<template id="viewerCssTheme-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Use system theme</option>
<option value="1">Light theme</option>
<option value="2">Dark theme</option>
</select>
</label>
</div>
</template>
<template id="viewerCssTheme-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Use system theme</option>
<option value="1">Light theme</option>
<option value="2">Dark theme</option>
</select>
</label>
</div>
</template>
<template id="viewOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="0">Show previous position</option>
<option value="1">Show initial position</option>
</select>
</label>
</div>
</template>
<template id="viewOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="0">Show previous position</option>
<option value="1">Show initial position</option>
</select>
</label>
</div>
</template>
<template id="defaultZoomValue-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="auto" selected="selected">Automatic Zoom</option>
<option value="page-actual">Actual Size</option>
<option value="page-fit">Page Fit</option>
<option value="page-width">Page Width</option>
<option value="custom" class="custom-zoom" hidden></option>
<option value="50">50%</option>
<option value="75">75%</option>
<option value="100">100%</option>
<option value="125">125%</option>
<option value="150">150%</option>
<option value="200">200%</option>
<option value="300">300%</option>
<option value="400">400%</option>
</select>
</label>
</div>
</template>
<template id="defaultZoomValue-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="auto" selected="selected">Automatic Zoom</option>
<option value="page-actual">Actual Size</option>
<option value="page-fit">Page Fit</option>
<option value="page-width">Page Width</option>
<option value="custom" class="custom-zoom" hidden></option>
<option value="50">50%</option>
<option value="75">75%</option>
<option value="100">100%</option>
<option value="125">125%</option>
<option value="150">150%</option>
<option value="200">200%</option>
<option value="300">300%</option>
<option value="400">400%</option>
</select>
</label>
</div>
</template>
<template id="sidebarViewOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="0">Do not show sidebar</option>
<option value="1">Show thumbnails in sidebar</option>
<option value="2">Show document outline in sidebar</option>
<option value="3">Show attachments in sidebar</option>
</select>
</label>
</div>
</template>
<template id="sidebarViewOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="0">Do not show sidebar</option>
<option value="1">Show thumbnails in sidebar</option>
<option value="2">Show document outline in sidebar</option>
<option value="3">Show attachments in sidebar</option>
</select>
</label>
</div>
</template>
<template id="cursorToolOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Text selection tool</option>
<option value="1">Hand tool</option>
</select>
</label>
</div>
</template>
<template id="cursorToolOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Text selection tool</option>
<option value="1">Hand tool</option>
</select>
</label>
</div>
</template>
<template id="textLayerMode-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Disable text selection</option>
<option value="1">Enable text selection</option>
</select>
</label>
</div>
</template>
<template id="textLayerMode-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Disable text selection</option>
<option value="1">Enable text selection</option>
</select>
</label>
</div>
</template>
<template id="externalLinkTarget-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Default</option>
<option value="1">Current window/tab</option>
<option value="2">New window/tab</option>
<option value="3">Parent window/tab</option>
<option value="4">Top window/tab</option>
</select>
</label>
</div>
</template>
<template id="externalLinkTarget-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="0">Default</option>
<option value="1">Current window/tab</option>
<option value="2">New window/tab</option>
<option value="3">Parent window/tab</option>
<option value="4">Top window/tab</option>
</select>
</label>
</div>
</template>
<template id="scrollModeOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="3">Page scrolling</option>
<option value="0">Vertical scrolling</option>
<option value="1">Horizontal scrolling</option>
<option value="2">Wrapped scrolling</option>
</select>
</label>
</div>
</template>
<template id="scrollModeOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="3">Page scrolling</option>
<option value="0">Vertical scrolling</option>
<option value="1">Horizontal scrolling</option>
<option value="2">Wrapped scrolling</option>
</select>
</label>
</div>
</template>
<template id="spreadModeOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="0">No spreads</option>
<option value="1">Odd spreads</option>
<option value="2">Even spreads</option>
</select>
</label>
</div>
</template>
<template id="spreadModeOnLoad-template">
<div class="settings-row">
<label>
<span></span>
<select>
<option value="-1">Default</option>
<option value="0">No spreads</option>
<option value="1">Odd spreads</option>
<option value="2">Even spreads</option>
</select>
</label>
</div>
</template>
<script src="options.js"></script>
</body>
<script src="options.js"></script>
</body>
</html>

View File

@ -69,7 +69,7 @@ async function registerPdfRedirectRule() {
},
};
// Rules in order of priority (highest priority rule first).
// Rules in order of prority (highest priority rule first).
// The required "id" fields will be auto-generated later.
const addRules = [
{

View File

@ -0,0 +1,234 @@
{
"type": "object",
"properties": {
"viewerCssTheme": {
"title": "Theme",
"description": "The theme to use.\n0 = Use system theme.\n1 = Light theme.\n2 = Dark theme.",
"type": "integer",
"enum": [0, 1, 2],
"default": 2
},
"showPreviousViewOnLoad": {
"description": "DEPRECATED. Set viewOnLoad to 1 to disable showing the last page/position on load.",
"type": "boolean",
"default": true
},
"viewOnLoad": {
"title": "View position on load",
"description": "The position in the document upon load.\n -1 = Default (uses OpenAction if available, otherwise equal to `viewOnLoad = 0`).\n 0 = The last viewed page/position.\n 1 = The initial page/position.",
"type": "integer",
"enum": [-1, 0, 1],
"default": 0
},
"defaultZoomDelay": {
"title": "Default zoom delay",
"description": "Delay (in ms) to wait before redrawing the canvas.",
"type": "integer",
"default": 400
},
"defaultZoomValue": {
"title": "Default zoom level",
"description": "Default zoom level of the viewer. Accepted values: 'auto', 'page-actual', 'page-width', 'page-height', 'page-fit', or a zoom level in percents.",
"type": "string",
"pattern": "|auto|page-actual|page-width|page-height|page-fit|[0-9]+\\.?[0-9]*(,[0-9]+\\.?[0-9]*){0,2}",
"default": ""
},
"sidebarViewOnLoad": {
"title": "Sidebar state on load",
"description": "Controls the state of the sidebar upon load.\n -1 = Default (uses PageMode if available, otherwise the last position if available/enabled).\n 0 = Do not show sidebar.\n 1 = Show thumbnails in sidebar.\n 2 = Show document outline in sidebar.\n 3 = Show attachments in sidebar.",
"type": "integer",
"enum": [-1, 0, 1, 2, 3],
"default": -1
},
"enableHandToolOnLoad": {
"description": "DEPRECATED. Set cursorToolOnLoad to 1 to enable the hand tool by default.",
"type": "boolean",
"default": false
},
"enableHWA": {
"title": "Enable hardware acceleration",
"description": "Whether to enable hardware acceleration.",
"type": "boolean",
"default": true
},
"enableAltText": {
"type": "boolean",
"default": false
},
"enableGuessAltText": {
"type": "boolean",
"default": true
},
"enableAltTextModelDownload": {
"type": "boolean",
"default": true
},
"enableNewAltTextWhenAddingImage": {
"type": "boolean",
"default": true
},
"altTextLearnMoreUrl": {
"type": "string",
"default": ""
},
"enableSignatureEditor": {
"type": "boolean",
"default": false
},
"enableUpdatedAddImage": {
"type": "boolean",
"default": false
},
"cursorToolOnLoad": {
"title": "Cursor tool on load",
"description": "The cursor tool that is enabled upon load.\n 0 = Text selection tool.\n 1 = Hand tool.",
"type": "integer",
"enum": [0, 1],
"default": 0
},
"pdfBugEnabled": {
"title": "Enable debugging tools",
"description": "Whether to enable debugging tools.",
"type": "boolean",
"default": false
},
"enableScripting": {
"title": "Enable active content (JavaScript) in PDFs",
"type": "boolean",
"description": "Whether to allow execution of active content (JavaScript) by PDF files.",
"default": false
},
"enableHighlightFloatingButton": {
"type": "boolean",
"default": false
},
"highlightEditorColors": {
"type": "string",
"default": "yellow=#FFFF98,green=#53FFBC,blue=#80EBFF,pink=#FFCBE6,red=#FF4F5F"
},
"disableRange": {
"title": "Disable range requests",
"description": "Whether to disable range requests (not recommended).",
"type": "boolean",
"default": false
},
"disableStream": {
"title": "Disable streaming for requests",
"description": "Whether to disable streaming for requests (not recommended).",
"type": "boolean",
"default": false
},
"disableAutoFetch": {
"type": "boolean",
"default": false
},
"disableFontFace": {
"title": "Disable @font-face",
"description": "Whether to disable @font-face and fall back to canvas rendering (this is more resource-intensive).",
"type": "boolean",
"default": false
},
"disableTextLayer": {
"description": "DEPRECATED. Set textLayerMode to 0 to disable the text selection layer by default.",
"type": "boolean",
"default": false
},
"textLayerMode": {
"title": "Text layer mode",
"description": "Controls if the text layer is enabled, and the selection mode that is used.\n 0 = Disabled.\n 1 = Enabled.",
"type": "integer",
"enum": [0, 1],
"default": 1
},
"externalLinkTarget": {
"title": "External links target window",
"description": "Controls how external links will be opened.\n 0 = default.\n 1 = replaces current window.\n 2 = new window/tab.\n 3 = parent.\n 4 = in top window.",
"type": "integer",
"enum": [0, 1, 2, 3, 4],
"default": 0
},
"disablePageLabels": {
"type": "boolean",
"default": false
},
"disablePageMode": {
"description": "DEPRECATED.",
"type": "boolean",
"default": false
},
"disableTelemetry": {
"title": "Disable telemetry",
"type": "boolean",
"description": "Whether to prevent the extension from reporting the extension and browser version to the extension developers.",
"default": false
},
"annotationMode": {
"type": "integer",
"enum": [0, 1, 2, 3],
"default": 2
},
"annotationEditorMode": {
"type": "integer",
"enum": [-1, 0, 3, 15],
"default": 0
},
"enablePermissions": {
"type": "boolean",
"default": false
},
"enableXfa": {
"type": "boolean",
"default": true
},
"historyUpdateUrl": {
"type": "boolean",
"default": false
},
"ignoreDestinationZoom": {
"title": "Ignore the zoom argument in destinations",
"description": "When enabled it will maintain the currently active zoom level, rather than letting the PDF document modify it, when navigating to internal destinations.",
"type": "boolean",
"default": false
},
"enablePrintAutoRotate": {
"title": "Automatically rotate printed pages",
"description": "When enabled, landscape pages are rotated when printed.",
"type": "boolean",
"default": true
},
"scrollModeOnLoad": {
"title": "Scroll mode on load",
"description": "Controls how the viewer scrolls upon load.\n -1 = Default (uses the last position if available/enabled).\n 3 = Page scrolling.\n 0 = Vertical scrolling.\n 1 = Horizontal scrolling.\n 2 = Wrapped scrolling.",
"type": "integer",
"enum": [-1, 0, 1, 2, 3],
"default": -1
},
"spreadModeOnLoad": {
"title": "Spread mode on load",
"description": "Whether the viewer should join pages into spreads upon load.\n -1 = Default (uses the last position if available/enabled).\n 0 = No spreads.\n 1 = Odd spreads.\n 2 = Even spreads.",
"type": "integer",
"enum": [-1, 0, 1, 2],
"default": -1
},
"forcePageColors": {
"description": "When enabled, the pdf rendering will use the high contrast mode colors",
"type": "boolean",
"default": false
},
"pageColorsBackground": {
"description": "The color is a string as defined in CSS. Its goal is to help improve readability in high contrast mode",
"type": "string",
"default": "Canvas"
},
"pageColorsForeground": {
"description": "The color is a string as defined in CSS. Its goal is to help improve readability in high contrast mode",
"type": "string",
"default": "CanvasText"
},
"enableAutoLinking": {
"description": "Enable creation of hyperlinks from text that look like URLs.",
"type": "boolean",
"default": true
}
}
}

View File

@ -1,19 +0,0 @@
Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -1,8 +0,0 @@
## Release
In order to get the file `decoder.js`:
* `gulp release-brotli --hash` followed by the git hash of the revision.
## Licensing
[brotli](https://github.com/google/brotli/) is under [MIT License](https://github.com/google/brotli/blob/master/LICENSE)

File diff suppressed because one or more lines are too long

View File

@ -47,25 +47,6 @@ function handlePreprocessorAction(ctx, actionName, args, path) {
}
function babelPluginPDFJSPreprocessor(babel, ctx) {
function removeUnusedFunctions(path) {
let removed;
do {
removed = false;
path.scope.crawl();
for (const name in path.scope.bindings) {
const binding = path.scope.bindings[name];
if (!binding.referenced) {
const { path: bindingPath } = binding;
if (bindingPath.isFunctionDeclaration()) {
bindingPath.remove();
removed = true;
}
}
}
// If we removed some functions, there might be new unused ones
} while (removed);
}
return {
name: "babel-plugin-pdfjs-preprocessor",
manipulateOptions({ parserOpts }) {
@ -192,6 +173,36 @@ function babelPluginPDFJSPreprocessor(babel, ctx) {
path.replaceWith(t.importExpression(source));
}
},
NewExpression(path) {
const { node } = path;
if (
t.isIdentifier(node.callee, { name: "URL" }) &&
node.arguments.length === 2
) {
const [arg1, arg2] = node.arguments;
if (
arg1.type === "StringLiteral" &&
arg1.value.endsWith(".wasm") &&
arg2.type === "MemberExpression"
) {
// This statement is generated by the Emscripten Compiler (emcc),
// however we're manually loading wasm-files and we want to ensure
// that bundlers will leave it alone; this *must* include Webpack.
arg1.leadingComments = [
{
type: "CommentBlock",
value: "webpackIgnore: true",
},
{
type: "CommentBlock",
value: "@vite-ignore",
},
];
}
}
},
"BlockStatement|StaticBlock": {
// Visit node in post-order so that recursive flattening
// of blocks works correctly.
@ -244,8 +255,6 @@ function babelPluginPDFJSPreprocessor(babel, ctx) {
// Function body ends with return without arg -- removing it.
body.pop();
}
removeUnusedFunctions(path);
},
},
ClassMethod: {
@ -268,26 +277,6 @@ function babelPluginPDFJSPreprocessor(babel, ctx) {
}
},
},
Program: {
exit(path) {
if (path.node.sourceType === "module") {
removeUnusedFunctions(path);
}
},
},
MemberExpression(path) {
// The Emscripten Compiler (emcc) generates code that allows the caller
// to provide the Wasm module (thorugh Module.instantiateWasm), with
// a fallback in case .instantiateWasm is not provided.
// We always define instantiateWasm, so we can hard-code the check
// and let our dead code elimination logic remove the unused fallback.
if (
path.parentPath.isIfStatement({ test: path.node }) &&
path.matchesPattern("Module.instantiateWasm")
) {
path.replaceWith(t.booleanLiteral(true));
}
},
},
};
}

View File

@ -39,22 +39,15 @@ function preprocess(inFilename, outFilename, defines) {
}
function expandCssImports(content, baseUrl) {
if (defines.GECKOVIEW) {
// In Geckoview, we don't need some styles.
const startComment = "/* Ignored in GECKOVIEW: begin */";
const endComment = "/* Ignored in GECKOVIEW: end */";
const beginIndex = content.indexOf(startComment);
const endIndex = content.indexOf(endComment);
if (beginIndex >= 0 && endIndex > beginIndex) {
content =
content.substring(0, beginIndex) +
content.substring(endIndex + endComment.length);
}
}
return content.replaceAll(
/^\s*@import\s+url\(([^)]+)\);\s*$/gm,
function (all, url) {
if (defines.GECKOVIEW) {
switch (url) {
case "annotation_editor_layer_builder.css":
return "";
}
}
const file = path.join(path.dirname(baseUrl), url);
const imported = fs.readFileSync(file, "utf8").toString();
return expandCssImports(imported, file);
@ -158,7 +151,7 @@ function preprocess(inFilename, outFilename, defines) {
let state = STATE_NONE;
const stack = [];
const control =
/^(?:\/\/|\s*\/\*|\s*<!--)\s*#(if|elif|else|endif|expand|include|error)\b(?:\s+(.*?)(?:\*\/|-->)?$)?/;
/^(?:\/\/|\s*\/\*|<!--)\s*#(if|elif|else|endif|expand|include|error)\b(?:\s+(.*?)(?:\*\/|-->)?$)?/;
while ((line = readLine()) !== null) {
++lineNumber;
@ -220,7 +213,7 @@ function preprocess(inFilename, outFilename, defines) {
) {
writeLine(
line
.replaceAll(/^\/\/|^\s*<!--/g, " ")
.replaceAll(/^\/\/|^<!--/g, " ")
.replaceAll(/(^\s*)\/\*/g, "$1 ")
.replaceAll(/\*\/$|-->$/g, "")
);

View File

@ -8,4 +8,3 @@ function test() {
}
"4";
}
test();

View File

@ -17,4 +17,3 @@ function test() {
"4";
}
}
test();

View File

@ -2,12 +2,10 @@ function f1() {
"1";
"2";
}
f1();
function f2() {
"1";
"2";
}
f2();
function f3() {
if ("1") {
"1";
@ -17,4 +15,3 @@ function f3() {
"4";
}
}
f3();

View File

@ -6,7 +6,6 @@ function f1() {
"2";
/* tail */
}
f1();
function f2() {
// head
@ -15,7 +14,6 @@ function f2() {
"2";
// tail
}
f2();
function f3() {
if ("1") { // begin block
@ -26,4 +24,3 @@ function f3() {
"4";
}
}
f3();

View File

@ -1,18 +1,14 @@
function f1() {}
f1();
function f2() {
return 1;
}
f2();
function f3() {
var i = 0;
throw "test";
}
f3();
function f4() {
var i = 0;
}
f4();
var obj = {
method1() {},
method2() {}

View File

@ -2,20 +2,17 @@ function f1() {
return;
var i = 0;
}
f1();
function f2() {
return 1;
var i = 0;
}
f2();
function f3() {
var i = 0;
throw "test";
var j = 0;
}
f3();
function f4() {
var i = 0;
@ -25,7 +22,6 @@ function f4() {
throw "test";
var j = 0;
}
f4();
var obj = {
method1() { return; var i = 0; },

View File

@ -16,4 +16,3 @@ if ('1') {
function f1() {
"1";
}
f1();

View File

@ -32,4 +32,3 @@ function f1() {
"2";
}
}
f1();

View File

@ -0,0 +1,4 @@
const wasmUrl = new URL(
/*webpackIgnore: true*/
/*@vite-ignore*/
"qwerty.wasm", import.meta.url);

View File

@ -0,0 +1 @@
const wasmUrl = new URL("qwerty.wasm" , import.meta.url);

View File

@ -1,5 +0,0 @@
function usedByUsed() {}
function used() {
usedByUsed();
}
used();

View File

@ -1,14 +0,0 @@
function usedByUsed() {}
function usedByUnused() {}
function usedByRemovedCode() {}
function used() {
usedByUsed();
return;
usedByRemovedCode();
}
function unused() {
usedByUnused();
}
used();

View File

@ -1,8 +1,9 @@
import * as builder from "./builder.mjs";
import { fileURLToPath } from "url";
import fs from "fs";
import path from "path";
const __dirname = import.meta.dirname;
const __dirname = path.dirname(fileURLToPath(import.meta.url));
let errors = 0;

View File

@ -1,8 +1,9 @@
import { fileURLToPath } from "url";
import fs from "fs";
import path from "path";
import { preprocessPDFJSCode } from "./babel-plugin-pdfjs-preprocessor.mjs";
const __dirname = import.meta.dirname;
const __dirname = path.dirname(fileURLToPath(import.meta.url));
let errors = 0;

View File

@ -1,270 +0,0 @@
/* Copyright 2026 Mozilla Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
const prefsMetadata = {
annotationEditorMode: {
enum: [-1, 0, 3, 15],
},
annotationMode: {
enum: [0, 1, 2, 3],
},
cursorToolOnLoad: {
title: "Cursor tool on load",
description:
"The cursor tool that is enabled upon load.\n 0 = Text selection tool.\n 1 = Hand tool.",
enum: [0, 1],
},
defaultZoomDelay: {
title: "Default zoom delay",
description: "Delay (in ms) to wait before redrawing the canvas.",
},
defaultZoomValue: {
title: "Default zoom level",
description:
"Default zoom level of the viewer. Accepted values: 'auto', 'page-actual', 'page-width', 'page-height', 'page-fit', or a zoom level in percents.",
pattern:
"|auto|page-actual|page-width|page-height|page-fit|[0-9]+\\.?[0-9]*(,[0-9]+\\.?[0-9]*){0,2}",
},
disableFontFace: {
title: "Disable @font-face",
description:
"Whether to disable @font-face and fall back to canvas rendering (this is more resource-intensive).",
},
disableRange: {
title: "Disable range requests",
description: "Whether to disable range requests (not recommended).",
},
disableStream: {
title: "Disable streaming for requests",
description: "Whether to disable streaming for requests (not recommended).",
},
disableTelemetry: {
title: "Disable telemetry",
description:
"Whether to prevent the extension from reporting the extension and browser version to the extension developers.",
},
enableAutoLinking: {
description: "Enable creation of hyperlinks from text that look like URLs.",
},
enableComment: {
description: "Enable creation of comment annotations.",
},
enableHWA: {
title: "Enable hardware acceleration",
description: "Whether to enable hardware acceleration.",
},
enableOptimizedPartialRendering: {
description:
"Enable tracking of PDF operations to optimize partial rendering.",
},
enablePrintAutoRotate: {
title: "Automatically rotate printed pages",
description: "When enabled, landscape pages are rotated when printed.",
},
enableScripting: {
title: "Enable active content (JavaScript) in PDFs",
description:
"Whether to allow execution of active content (JavaScript) by PDF files.",
},
externalLinkTarget: {
title: "External links target window",
description:
"Controls how external links will be opened.\n 0 = default.\n 1 = replaces current window.\n 2 = new window/tab.\n 3 = parent.\n 4 = in top window.",
enum: [0, 1, 2, 3, 4],
},
forcePageColors: {
description:
"When enabled, the pdf rendering will use the high contrast mode colors",
},
ignoreDestinationZoom: {
title: "Ignore the zoom argument in destinations",
description:
"When enabled it will maintain the currently active zoom level, rather than letting the PDF document modify it, when navigating to internal destinations.",
},
pageColorsBackground: {
description:
"The color is a string as defined in CSS. Its goal is to help improve readability in high contrast mode",
},
pageColorsForeground: {
description:
"The color is a string as defined in CSS. Its goal is to help improve readability in high contrast mode",
},
pdfBugEnabled: {
title: "Enable debugging tools",
description: "Whether to enable debugging tools.",
},
scrollModeOnLoad: {
title: "Scroll mode on load",
description:
"Controls how the viewer scrolls upon load.\n -1 = Default (uses the last position if available/enabled).\n 0 = Vertical scrolling.\n 1 = Horizontal scrolling.\n 2 = Wrapped scrolling.\n 3 = Page scrolling.",
enum: [-1, 0, 1, 2, 3],
},
sidebarViewOnLoad: {
title: "Sidebar state on load",
description:
"Controls the state of the sidebar upon load.\n -1 = Default (uses PageMode if available, otherwise the last position if available/enabled).\n 0 = Do not show sidebar.\n 1 = Show thumbnails in sidebar.\n 2 = Show document outline in sidebar.\n 3 = Show attachments in sidebar.",
enum: [-1, 0, 1, 2, 3],
},
spreadModeOnLoad: {
title: "Spread mode on load",
description:
"Whether the viewer should join pages into spreads upon load.\n -1 = Default (uses the last position if available/enabled).\n 0 = No spreads.\n 1 = Odd spreads.\n 2 = Even spreads.",
enum: [-1, 0, 1, 2],
},
textLayerMode: {
title: "Text layer mode",
description:
"Controls if the text layer is enabled, and the selection mode that is used.\n 0 = Disabled.\n 1 = Enabled.",
enum: [0, 1],
},
viewerCssTheme: {
title: "Theme",
description:
"The theme to use.\n0 = Use system theme.\n1 = Light theme.\n2 = Dark theme.",
enum: [0, 1, 2],
},
viewOnLoad: {
title: "View position on load",
description:
"The position in the document upon load.\n -1 = Default (uses OpenAction if available, otherwise equal to `viewOnLoad = 0`).\n 0 = The last viewed page/position.\n 1 = The initial page/position.",
enum: [-1, 0, 1],
},
};
// Deprecated keys are allowed in the managed preferences file.
// The code maintainer is responsible for adding migration logic to
// extensions/chromium/options/migration.js and web/chromecom.js .
const deprecatedPrefs = {
disablePageMode: {
description: "DEPRECATED.",
type: "boolean",
default: false,
},
disableTextLayer: {
description:
"DEPRECATED. Set textLayerMode to 0 to disable the text selection layer by default.",
type: "boolean",
default: false,
},
enableHandToolOnLoad: {
description:
"DEPRECATED. Set cursorToolOnLoad to 1 to enable the hand tool by default.",
type: "boolean",
default: false,
},
showPreviousViewOnLoad: {
description:
"DEPRECATED. Set viewOnLoad to 1 to disable showing the last page/position on load.",
type: "boolean",
default: true,
},
};
function buildPrefsSchema(prefs) {
const properties = Object.create(null);
for (const name in prefs) {
const pref = prefs[name];
let type = typeof pref;
switch (type) {
case "boolean":
case "string":
break;
case "number":
type = "integer";
break;
default:
throw new Error(`Invalid type (${type}) for "${name}"-preference.`);
}
const metadata = prefsMetadata[name];
if (metadata) {
let numMetadataKeys = 0;
// Do some (very basic) validation of the metadata.
for (const key in metadata) {
const entry = metadata[key];
switch (key) {
case "default":
case "type":
throw new Error(
`Invalid key (${key}) in metadata for "${name}"-preference.`
);
case "description":
if (entry.startsWith("DEPRECATED.")) {
throw new Error(
`The \`description\` of the "${name}"-preference cannot begin with "DEPRECATED."`
);
}
break;
}
numMetadataKeys++;
}
if (numMetadataKeys === 0) {
throw new Error(
`No metadata for "${name}"-preference, remove the entry.`
);
}
}
properties[name] = {
type,
default: pref,
...metadata,
};
}
for (const name in prefsMetadata) {
if (!properties[name]) {
// Do *not* throw here, since keeping the metadata up-to-date should be
// the responsibility of the CHROMIUM-addon maintainer.
console.error(
`The "${name}"-preference was removed, add it to \`deprecatedPrefs\` instead.\n`
);
}
}
for (const name in deprecatedPrefs) {
const entry = deprecatedPrefs[name];
if (properties[name]) {
throw new Error(
`The "${name}"-preference should not be listed as deprecated.`
);
}
if (!entry.description?.startsWith("DEPRECATED.")) {
throw new Error(
`The \`description\` of the deprecated "${name}"-preference must begin with "DEPRECATED."`
);
}
for (const key of ["default", "type"]) {
if (key in entry) {
continue;
}
throw new Error(
`A \`${key}\` entry must be provided for the deprecated "${name}"-preference.`
);
}
properties[name] = entry;
}
return {
type: "object",
properties,
};
}
export { buildPrefsSchema };

View File

@ -31,7 +31,7 @@ async function downloadLanguageCodes() {
console.log("Downloading language codes...\n");
const ALL_LOCALES =
"https://raw.githubusercontent.com/mozilla-firefox/firefox/main/browser/locales/all-locales";
"https://raw.githubusercontent.com/mozilla/gecko-dev/master/browser/locales/all-locales";
const response = await fetch(ALL_LOCALES);
if (!response.ok) {

View File

@ -1,196 +0,0 @@
// Copyright 2014 The PDFium Authors
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Apache License
Version 2.0, January 2004
https://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@ -1,13 +0,0 @@
Copyright 2026 Mozilla Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@ -1,12 +0,0 @@
## Build
In order to generate the file `jbig2.js`:
* git clone https://github.com/mozilla/pdf.js.jbig2/
* the build requires to have a [Docker](https://www.docker.com/) setup and then:
* `node build.js -C` to build the Docker image
* `node build.js -co /pdf.js/external/jbig2/` to compile the decoder
## Licensing
[PDFium](https://pdfium.googlesource.com/pdfium/) is under [Apache-2.0](https://pdfium.googlesource.com/pdfium/+/main/LICENSE)
and [pdf.js.jbig2](https://github.com/mozilla/pdf.js.jbig2/) is released under [Apache-2.0](https://github.com/mozilla/pdf.js.jbig2/blob/main/LICENSE) license so `jbig2.js` is released under [Apache-2.0](https://github.com/mozilla/pdf.js.jbig2/blob/main/LICENSE) license too.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

24
external/qcms/qcms.js vendored
View File

@ -1,5 +1,5 @@
/* THIS FILE IS GENERATED - DO NOT EDIT */
import { copy_result, copy_rgb, make_cssRGB } from './qcms_utils.js';
import { copy_result, copy_rgb } from './qcms_utils.js';
let wasm;
@ -48,10 +48,9 @@ export function qcms_convert_array(transformer, src) {
* This function is called directly from JavaScript.
* @param {number} transformer
* @param {number} src
* @param {boolean} css
*/
export function qcms_convert_one(transformer, src, css) {
wasm.qcms_convert_one(transformer, src, css);
export function qcms_convert_one(transformer, src) {
wasm.qcms_convert_one(transformer, src);
}
/**
@ -62,10 +61,9 @@ export function qcms_convert_one(transformer, src, css) {
* @param {number} src1
* @param {number} src2
* @param {number} src3
* @param {boolean} css
*/
export function qcms_convert_three(transformer, src1, src2, src3, css) {
wasm.qcms_convert_three(transformer, src1, src2, src3, css);
export function qcms_convert_three(transformer, src1, src2, src3) {
wasm.qcms_convert_three(transformer, src1, src2, src3);
}
/**
@ -77,10 +75,9 @@ export function qcms_convert_three(transformer, src1, src2, src3, css) {
* @param {number} src2
* @param {number} src3
* @param {number} src4
* @param {boolean} css
*/
export function qcms_convert_four(transformer, src1, src2, src3, src4, css) {
wasm.qcms_convert_four(transformer, src1, src2, src3, src4, css);
export function qcms_convert_four(transformer, src1, src2, src3, src4) {
wasm.qcms_convert_four(transformer, src1, src2, src3, src4);
}
/**
@ -170,9 +167,6 @@ function __wbg_get_imports() {
imports.wbg.__wbg_copyrgb_d60ce17bb05d9b67 = function(arg0) {
copy_rgb(arg0 >>> 0);
};
imports.wbg.__wbg_makecssRGB_893bf0cd9fdb302d = function(arg0) {
make_cssRGB(arg0 >>> 0);
};
imports.wbg.__wbindgen_init_externref_table = function() {
const table = wasm.__wbindgen_export_0;
const offset = table.grow(4);
@ -241,7 +235,9 @@ async function __wbg_init(module_or_path) {
}
}
if (typeof module_or_path === 'undefined') {
module_or_path = new URL('qcms_bg.wasm', import.meta.url);
}
const imports = __wbg_get_imports();
if (typeof module_or_path === 'string' || (typeof Request === 'function' && module_or_path instanceof Request) || (typeof URL === 'function' && module_or_path instanceof URL)) {

Binary file not shown.

View File

@ -14,71 +14,41 @@
*/
class QCMS {
static #memoryArray = null;
static _memory = null;
static _module = null;
static _mustAddAlpha = false;
static _destBuffer = null;
static _destOffset = 0;
static _destLength = 0;
static _cssColor = "";
static _makeHexColor = null;
static get _memoryArray() {
const array = this.#memoryArray;
if (array?.byteLength) {
return array;
}
return (this.#memoryArray = new Uint8Array(this._memory.buffer));
}
}
function copy_result(ptr, len) {
// This function is called from the wasm module (it's an external
// "C" function). Its goal is to copy the result from the wasm memory
// to the destination buffer without any intermediate copies.
const { _mustAddAlpha, _destBuffer, _destOffset, _destLength, _memoryArray } =
QCMS;
if (len === _destLength) {
_destBuffer.set(_memoryArray.subarray(ptr, ptr + len), _destOffset);
const { _module, _mustAddAlpha, _destBuffer } = QCMS;
const result = new Uint8Array(_module.memory.buffer, ptr, len);
if (result.length === _destBuffer.length) {
_destBuffer.set(result);
return;
}
if (_mustAddAlpha) {
for (let i = ptr, ii = ptr + len, j = _destOffset; i < ii; i += 3, j += 4) {
_destBuffer[j] = _memoryArray[i];
_destBuffer[j + 1] = _memoryArray[i + 1];
_destBuffer[j + 2] = _memoryArray[i + 2];
for (let i = 0, j = 0, ii = result.length; i < ii; i += 3, j += 4) {
_destBuffer[j] = result[i];
_destBuffer[j + 1] = result[i + 1];
_destBuffer[j + 2] = result[i + 2];
_destBuffer[j + 3] = 255;
}
} else {
for (let i = ptr, ii = ptr + len, j = _destOffset; i < ii; i += 3, j += 4) {
_destBuffer[j] = _memoryArray[i];
_destBuffer[j + 1] = _memoryArray[i + 1];
_destBuffer[j + 2] = _memoryArray[i + 2];
for (let i = 0, j = 0, ii = result.length; i < ii; i += 3, j += 4) {
_destBuffer[j] = result[i];
_destBuffer[j + 1] = result[i + 1];
_destBuffer[j + 2] = result[i + 2];
}
}
}
function copy_rgb(ptr) {
const { _destBuffer, _destOffset, _memoryArray } = QCMS;
_destBuffer[_destOffset] = _memoryArray[ptr];
_destBuffer[_destOffset + 1] = _memoryArray[ptr + 1];
_destBuffer[_destOffset + 2] = _memoryArray[ptr + 2];
QCMS._destBuffer.set(new Uint8Array(QCMS._module.memory.buffer, ptr, 3));
}
function make_cssRGB(ptr) {
const { _memoryArray } = QCMS;
QCMS._cssColor = QCMS._makeHexColor(
_memoryArray[ptr],
_memoryArray[ptr + 1],
_memoryArray[ptr + 2]
);
}
export { copy_result, copy_rgb, make_cssRGB, QCMS };
export { copy_result, copy_rgb, QCMS };

View File

@ -1,108 +0,0 @@
/* Copyright 2025 Mozilla Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { parse, registerWalkers, Root } from "postcss-values-parser";
import { isString } from "stylelint/lib/utils/validateTypes.mjs";
import stylelint from "stylelint";
const {
createPlugin,
utils: { report, validateOptions },
} = stylelint;
registerWalkers(Root);
const ruleName = "pdfjs/no-unused-custom-properties";
// It's a very basic linter: we don't take into account scopes.
// But it should be enough for our use case.
/** @type {import('stylelint').Plugin} */
const ruleFunction =
(enabled, { ignoreList = [] } = {}, context = {}) =>
(root, result) => {
const validOptions = validateOptions(
result,
ruleName,
{
actual: enabled,
possible: [true],
},
{
actual: ignoreList,
possible: [isString],
optional: true,
}
);
if (!validOptions) {
return;
}
ignoreList = ignoreList.map(s => (s.startsWith("--") ? s : `--${s}`));
const usedCustomProperties = new Set(ignoreList);
const definedCustomProperties = new Set();
const usedBy = new Map();
root.walkDecls(decl => {
let definingProperty = null;
if (decl.prop.startsWith("--")) {
// This is a custom property definition.
definingProperty = decl.prop;
definedCustomProperties.add(definingProperty);
}
// Parse the declaration value to find var() usages.
const parsedValue = parse(decl.value);
parsedValue.walkFuncs(node => {
if (!node.isVar || node.nodes.length === 0) {
return;
}
// This is a var() function; get the custom property name.
const property = node.nodes[0].value;
if (!definingProperty) {
// This is a usage of a custom property but not in a definition.
// width: var(--foo);
usedCustomProperties.add(property);
return;
}
let usages = usedBy.get(property);
if (!usages) {
usages = [];
usedBy.set(property, usages);
}
// Record that this custom property is used by the defining property.
// --foo: var(--bar);
// bar is really used only if foo is.
usages.push(definingProperty);
});
});
const isUsed = p =>
usedCustomProperties.has(p) || (usedBy.get(p) || []).some(isUsed);
for (const customProperty of definedCustomProperties) {
if (isUsed(customProperty)) {
continue;
}
report({
message: `Custom property "${customProperty}" is defined but never used.`,
node: root,
result,
ruleName,
});
}
};
ruleFunction.ruleName = ruleName;
export default createPlugin(ruleName, ruleFunction);

View File

@ -20,9 +20,8 @@ import {
import { exec, execSync, spawn, spawnSync } from "child_process";
import autoprefixer from "autoprefixer";
import babel from "@babel/core";
import { buildPrefsSchema } from "./external/chromium/prefs.mjs";
import crypto from "crypto";
import { finished } from "stream/promises";
import { fileURLToPath } from "url";
import fs from "fs";
import gulp from "gulp";
import hljs from "highlight.js";
@ -47,7 +46,7 @@ import webpack2 from "webpack";
import webpackStream from "webpack-stream";
import zip from "gulp-zip";
const __dirname = import.meta.dirname;
const __dirname = path.dirname(fileURLToPath(import.meta.url));
const BUILD_DIR = "build/";
const L10N_DIR = "l10n/";
@ -69,7 +68,6 @@ const GH_PAGES_DIR = BUILD_DIR + "gh-pages/";
const DIST_DIR = BUILD_DIR + "dist/";
const TYPES_DIR = BUILD_DIR + "types/";
const TMP_DIR = BUILD_DIR + "tmp/";
const PREFSTEST_DIR = BUILD_DIR + "prefstest/";
const TYPESTEST_DIR = BUILD_DIR + "typestest/";
const COMMON_WEB_FILES = [
"web/images/*.{png,svg,gif}",
@ -99,7 +97,7 @@ const AUTOPREFIXER_CONFIG = {
const BABEL_TARGETS = ENV_TARGETS.join(", ");
const BABEL_PRESET_ENV_OPTS = Object.freeze({
corejs: "3.47.0",
corejs: "3.41.0",
exclude: ["web.structured-clone"],
shippedProposals: true,
useBuiltIns: "usage",
@ -214,13 +212,13 @@ function createWebpackAlias(defines) {
"web-pdf_layer_viewer": "web/pdf_layer_viewer.js",
"web-pdf_outline_viewer": "web/pdf_outline_viewer.js",
"web-pdf_presentation_mode": "web/pdf_presentation_mode.js",
"web-pdf_sidebar": "web/pdf_sidebar.js",
"web-pdf_thumbnail_viewer": "web/pdf_thumbnail_viewer.js",
"web-preferences": "",
"web-print_service": "",
"web-secondary_toolbar": "web/secondary_toolbar.js",
"web-signature_manager": "web/signature_manager.js",
"web-toolbar": "web/toolbar.js",
"web-views_manager": "web/views_manager.js",
};
if (defines.CHROME) {
@ -232,7 +230,7 @@ function createWebpackAlias(defines) {
libraryAlias["display-fetch_stream"] = "src/display/fetch_stream.js";
libraryAlias["display-network"] = "src/display/network.js";
viewerAlias["web-download_manager"] = "web/chromecom.js";
viewerAlias["web-download_manager"] = "web/download_manager.js";
viewerAlias["web-external_services"] = "web/chromecom.js";
viewerAlias["web-null_l10n"] = "web/l10n.js";
viewerAlias["web-preferences"] = "web/chromecom.js";
@ -286,6 +284,7 @@ function createWebpackConfig(
disableVersionInfo = false,
disableSourceMaps = false,
disableLicenseHeader = false,
defaultPreferencesDir = null,
} = {}
) {
const versionInfo = !disableVersionInfo
@ -296,17 +295,14 @@ function createWebpackConfig(
BUNDLE_VERSION: versionInfo.version,
BUNDLE_BUILD: versionInfo.commit,
TESTING: defines.TESTING ?? process.env.TESTING === "true",
DEFAULT_PREFERENCES: defaultPreferencesDir
? getDefaultPreferences(defaultPreferencesDir)
: {},
DEFAULT_FTL: defines.GENERIC ? getDefaultFtl() : "",
};
const licenseHeaderLibre = fs
.readFileSync("./src/license_header_libre.js")
.toString();
const versionInfoHeader = [
"/**",
` * pdfjsVersion = ${versionInfo.version}`,
` * pdfjsBuild = ${versionInfo.commit}`,
" */",
].join("\n");
const enableSourceMaps =
!bundleDefines.MOZCENTRAL &&
!bundleDefines.CHROME &&
@ -340,39 +336,9 @@ function createWebpackConfig(
const plugins = [];
if (!disableLicenseHeader) {
plugins.push(
new webpack2.BannerPlugin({
banner: licenseHeaderLibre + "\n" + versionInfoHeader,
raw: true,
})
new webpack2.BannerPlugin({ banner: licenseHeaderLibre, raw: true })
);
}
plugins.push({
/** @param {import('webpack').Compiler} compiler */
apply(compiler) {
const errors = [];
compiler.hooks.afterCompile.tap("VerifyImportMeta", compilation => {
for (const asset of compilation.getAssets()) {
if (asset.name.endsWith(".mjs")) {
const source = asset.source.source();
if (
typeof source === "string" &&
/new URL\([^,)]*,\s*import\.meta\.url/.test(source)
) {
errors.push(
`Output module ${asset.name} uses new URL(..., import.meta.url)`
);
}
}
}
});
compiler.hooks.afterEmit.tap("VerifyImportMeta", compilation => {
// Emit the errors after emitting the files, so that it's possible to
// look at the contents of the invalid bundle.
compilation.errors.push(...errors);
});
},
});
const alias = createWebpackAlias(bundleDefines);
const experiments = isModule ? { outputModule: true } : undefined;
@ -396,9 +362,6 @@ function createWebpackConfig(
// V8 chokes on very long sequences, work around that.
sequences: false,
},
format: {
comments: /@lic|webpackIgnore|@vite-ignore|pdfjsVersion/i,
},
keep_classnames: true,
keep_fnames: true,
module: isModule,
@ -451,6 +414,51 @@ function getVersionJSON() {
return JSON.parse(fs.readFileSync(BUILD_DIR + "version.json").toString());
}
function checkChromePreferencesFile(chromePrefsPath, webPrefs) {
const chromePrefs = JSON.parse(fs.readFileSync(chromePrefsPath).toString());
const chromePrefsKeys = Object.keys(chromePrefs.properties).filter(key => {
const description = chromePrefs.properties[key].description;
// Deprecated keys are allowed in the managed preferences file.
// The code maintainer is responsible for adding migration logic to
// extensions/chromium/options/migration.js and web/chromecom.js .
return !description?.startsWith("DEPRECATED.");
});
let ret = true;
// Verify that every entry in webPrefs is also in preferences_schema.json.
for (const [key, value] of Object.entries(webPrefs)) {
if (!chromePrefsKeys.includes(key)) {
// Note: this would also reject keys that are present but marked as
// DEPRECATED. A key should not be marked as DEPRECATED if it is still
// listed in webPrefs.
ret = false;
console.log(
`Warning: ${chromePrefsPath} does not contain an entry for pref: ${key}`
);
} else if (chromePrefs.properties[key].default !== value) {
ret = false;
console.log(
`Warning: not the same values (for "${key}"): ` +
`${chromePrefs.properties[key].default} !== ${value}`
);
}
}
// Verify that preferences_schema.json does not contain entries that are not
// in webPrefs (app_options.js).
for (const key of chromePrefsKeys) {
if (!(key in webPrefs)) {
ret = false;
console.log(
`Warning: ${chromePrefsPath} contains an unrecognized pref: ${key}. ` +
`Remove it, or prepend "DEPRECATED. " and add migration logic to ` +
`extensions/chromium/options/migration.js and web/chromecom.js.`
);
}
}
return ret;
}
function createMainBundle(defines) {
const mainFileConfig = createWebpackConfig(defines, {
filename: defines.MINIFIED ? "pdf.min.mjs" : "pdf.mjs",
@ -544,24 +552,36 @@ function createWorkerBundle(defines) {
}
function createWebBundle(defines, options) {
const viewerFileConfig = createWebpackConfig(defines, {
filename: "viewer.mjs",
library: {
type: "module",
const viewerFileConfig = createWebpackConfig(
defines,
{
filename: "viewer.mjs",
library: {
type: "module",
},
},
});
{
defaultPreferencesDir: options.defaultPreferencesDir,
}
);
return gulp
.src("./web/viewer.js", { encoding: false })
.pipe(webpack2Stream(viewerFileConfig));
}
function createGVWebBundle(defines, options) {
const viewerFileConfig = createWebpackConfig(defines, {
filename: "viewer-geckoview.mjs",
library: {
type: "module",
const viewerFileConfig = createWebpackConfig(
defines,
{
filename: "viewer-geckoview.mjs",
library: {
type: "module",
},
},
});
{
defaultPreferencesDir: options.defaultPreferencesDir,
}
);
return gulp
.src("./web/viewer-geckoview.js", { encoding: false })
.pipe(webpack2Stream(viewerFileConfig));
@ -638,10 +658,6 @@ function createWasmBundle() {
base: "external/qcms",
encoding: false,
}),
gulp.src(["external/jbig2/*.wasm", "external/jbig2/LICENSE_*"], {
base: "external/jbig2",
encoding: false,
}),
]);
}
@ -679,7 +695,8 @@ function getTempFile(prefix, suffix) {
function runTests(testsName, { bot = false, xfaOnly = false } = {}) {
return new Promise((resolve, reject) => {
console.log("\n### Running " + testsName + " tests");
console.log();
console.log("### Running " + testsName + " tests");
const PDF_TEST = process.env.PDF_TEST || "test_manifest.json";
let forceNoChrome = false;
@ -764,7 +781,8 @@ function collectArgs(options, args) {
}
function makeRef(done, bot) {
console.log("\n### Creating reference images");
console.log();
console.log("### Creating reference images");
let forceNoChrome = false;
const args = ["test.mjs", "--masterMode"];
@ -814,30 +832,9 @@ gulp.task("default", function (done) {
done();
});
gulp.task("release-brotli", async function (done) {
const hashIndex = process.argv.indexOf("--hash");
if (hashIndex === -1 || hashIndex + 1 >= process.argv.length) {
throw new Error('Missing "--hash <commit-hash>" argument.');
}
console.log();
console.log("### Getting Brotli js file for release");
const OUTPUT_DIR = "./external/brotli/";
const hash = process.argv[hashIndex + 1];
const url = `https://raw.githubusercontent.com/google/brotli/${hash}/js/decode.js`;
const outputPath = OUTPUT_DIR + "decode.js";
const res = await fetch(url);
const fileStream = fs.createWriteStream(outputPath, { flags: "w" });
await finished(stream.Readable.fromWeb(res.body).pipe(fileStream));
fileStream.end();
console.log(`Brotli js file saved to: ${outputPath}`);
done();
});
function createBuildNumber(done) {
console.log("\n### Getting extension build number");
console.log();
console.log("### Getting extension build number");
exec(
"git log --format=oneline " + config.baseVersion + "..",
@ -882,7 +879,8 @@ function createBuildNumber(done) {
}
function buildDefaultPreferences(defines, dir) {
console.log(`\n### Building default preferences (${dir})`);
console.log();
console.log("### Building default preferences");
const bundleDefines = {
...defines,
@ -908,14 +906,12 @@ function buildDefaultPreferences(defines, dir) {
.pipe(gulp.dest(DEFAULT_PREFERENCES_DIR + dir));
}
function getDefaultPreferences(dir) {
console.log(`\n### Parsing default preferences (${dir})`);
async function parseDefaultPreferences(dir) {
console.log();
console.log("### Parsing default preferences");
const require = process
.getBuiltinModule("module")
.createRequire(import.meta.url);
const { AppOptions, OptionKind } = require(
// eslint-disable-next-line no-unsanitized/method
const { AppOptions, OptionKind } = await import(
"./" + DEFAULT_PREFERENCES_DIR + dir + "app_options.mjs"
);
@ -924,9 +920,20 @@ function getDefaultPreferences(dir) {
/* defaultOnly = */ true
);
if (Object.keys(prefs).length === 0) {
throw new Error(`No default preferences found in "${dir}".`);
throw new Error("No default preferences found.");
}
return prefs;
fs.writeFileSync(
DEFAULT_PREFERENCES_DIR + dir + "default_preferences.json",
JSON.stringify(prefs)
);
}
function getDefaultPreferences(dir) {
const str = fs
.readFileSync(DEFAULT_PREFERENCES_DIR + dir + "default_preferences.json")
.toString();
return JSON.parse(str);
}
function getDefaultFtl() {
@ -947,7 +954,8 @@ function getDefaultFtl() {
gulp.task("locale", function () {
const VIEWER_LOCALE_OUTPUT = "web/locale/";
console.log("\n### Building localization files");
console.log();
console.log("### Building localization files");
fs.rmSync(VIEWER_LOCALE_OUTPUT, { recursive: true, force: true });
fs.mkdirSync(VIEWER_LOCALE_OUTPUT, { recursive: true });
@ -995,7 +1003,8 @@ gulp.task("cmaps", async function () {
const CMAP_INPUT = "external/cmaps";
const VIEWER_CMAP_OUTPUT = "external/bcmaps";
console.log("\n### Building cmaps");
console.log();
console.log("### Building cmaps");
// Testing a file that usually present.
if (!checkFile(CMAP_INPUT + "/UniJIS-UCS2-H")) {
@ -1011,8 +1020,9 @@ gulp.task("cmaps", async function () {
}
});
const { compressCmaps } =
await import("./external/cmapscompress/compress.mjs");
const { compressCmaps } = await import(
"./external/cmapscompress/compress.mjs"
);
compressCmaps(CMAP_INPUT, VIEWER_CMAP_OUTPUT, true);
});
@ -1056,7 +1066,11 @@ function buildGeneric(defines, dir) {
createMainBundle(defines).pipe(gulp.dest(dir + "build")),
createWorkerBundle(defines).pipe(gulp.dest(dir + "build")),
createSandboxBundle(defines).pipe(gulp.dest(dir + "build")),
createWebBundle(defines).pipe(gulp.dest(dir + "web")),
createWebBundle(defines, {
defaultPreferencesDir: defines.SKIP_BABEL
? "generic/"
: "generic-legacy/",
}).pipe(gulp.dest(dir + "web")),
gulp
.src(COMMON_WEB_FILES, { base: "web/", encoding: false })
.pipe(gulp.dest(dir + "web")),
@ -1100,10 +1114,17 @@ gulp.task(
"locale",
function scriptingGeneric() {
const defines = { ...DEFINES, GENERIC: true };
return createTemporaryScriptingBundle(defines);
return ordered([
buildDefaultPreferences(defines, "generic/"),
createTemporaryScriptingBundle(defines),
]);
},
async function prefsGeneric() {
await parseDefaultPreferences("generic/");
},
function createGeneric() {
console.log("\n### Creating generic viewer");
console.log();
console.log("### Creating generic viewer");
const defines = { ...DEFINES, GENERIC: true };
return buildGeneric(defines, GENERIC_DIR);
@ -1120,10 +1141,17 @@ gulp.task(
"locale",
function scriptingGenericLegacy() {
const defines = { ...DEFINES, GENERIC: true, SKIP_BABEL: false };
return createTemporaryScriptingBundle(defines);
return ordered([
buildDefaultPreferences(defines, "generic-legacy/"),
createTemporaryScriptingBundle(defines),
]);
},
async function prefsGenericLegacy() {
await parseDefaultPreferences("generic-legacy/");
},
function createGenericLegacy() {
console.log("\n### Creating generic (legacy) viewer");
console.log();
console.log("### Creating generic (legacy) viewer");
const defines = { ...DEFINES, GENERIC: true, SKIP_BABEL: false };
return buildGeneric(defines, GENERIC_LEGACY_DIR);
@ -1134,7 +1162,15 @@ gulp.task(
function buildComponents(defines, dir) {
fs.rmSync(dir, { recursive: true, force: true });
const COMPONENTS_IMAGES = ["web/images/*.svg", "web/images/*.gif"];
const COMPONENTS_IMAGES = [
"web/images/annotation-*.svg",
"web/images/loading-icon.gif",
"web/images/altText_*.svg",
"web/images/editor-toolbar-*.svg",
"web/images/messageBar_*.svg",
"web/images/toolbarButton-{editorHighlight,menuArrow}.svg",
"web/images/cursor-*.svg",
];
return ordered([
createComponentsBundle(defines).pipe(gulp.dest(dir)),
@ -1158,7 +1194,8 @@ function buildComponents(defines, dir) {
gulp.task(
"components",
gulp.series(createBuildNumber, function createComponents() {
console.log("\n### Creating generic components");
console.log();
console.log("### Creating generic components");
const defines = { ...DEFINES, COMPONENTS: true, GENERIC: true };
return buildComponents(defines, COMPONENTS_DIR);
@ -1168,7 +1205,8 @@ gulp.task(
gulp.task(
"components-legacy",
gulp.series(createBuildNumber, function createComponentsLegacy() {
console.log("\n### Creating generic (legacy) components");
console.log();
console.log("### Creating generic (legacy) components");
const defines = {
...DEFINES,
COMPONENTS: true,
@ -1183,7 +1221,8 @@ gulp.task(
gulp.task(
"image_decoders",
gulp.series(createBuildNumber, function createImageDecoders() {
console.log("\n### Creating image decoders");
console.log();
console.log("### Creating image decoders");
const defines = { ...DEFINES, GENERIC: true, IMAGE_DECODERS: true };
return createImageDecodersBundle(defines).pipe(
@ -1195,7 +1234,8 @@ gulp.task(
gulp.task(
"image_decoders-legacy",
gulp.series(createBuildNumber, function createImageDecodersLegacy() {
console.log("\n### Creating (legacy) image decoders");
console.log();
console.log("### Creating (legacy) image decoders");
const defines = {
...DEFINES,
GENERIC: true,
@ -1229,10 +1269,17 @@ gulp.task(
"locale",
function scriptingMinified() {
const defines = { ...DEFINES, MINIFIED: true, GENERIC: true };
return createTemporaryScriptingBundle(defines);
return ordered([
buildDefaultPreferences(defines, "minified/"),
createTemporaryScriptingBundle(defines),
]);
},
async function prefsMinified() {
await parseDefaultPreferences("minified/");
},
function createMinified() {
console.log("\n### Creating minified viewer");
console.log();
console.log("### Creating minified viewer");
const defines = { ...DEFINES, MINIFIED: true, GENERIC: true };
return buildMinified(defines, MINIFIED_DIR);
@ -1252,10 +1299,17 @@ gulp.task(
GENERIC: true,
SKIP_BABEL: false,
};
return createTemporaryScriptingBundle(defines);
return ordered([
buildDefaultPreferences(defines, "minified-legacy/"),
createTemporaryScriptingBundle(defines),
]);
},
async function prefsMinifiedLegacy() {
await parseDefaultPreferences("minified-legacy/");
},
function createMinifiedLegacy() {
console.log("\n### Creating minified (legacy) viewer");
console.log();
console.log("### Creating minified (legacy) viewer");
const defines = {
...DEFINES,
MINIFIED: true,
@ -1269,8 +1323,6 @@ gulp.task(
);
function createDefaultPrefsFile() {
console.log("\n### Building mozilla-central preferences file");
const defaultFileName = "PdfJsDefaultPrefs.js",
overrideFileName = "PdfJsOverridePrefs.js";
const licenseHeader = fs.readFileSync("./src/license_header.js").toString();
@ -1309,8 +1361,12 @@ gulp.task(
const defines = { ...DEFINES, MOZCENTRAL: true };
return buildDefaultPreferences(defines, "mozcentral/");
},
async function prefsMozcentral() {
await parseDefaultPreferences("mozcentral/");
},
function createMozcentral() {
console.log("\n### Building mozilla-central extension");
console.log();
console.log("### Building mozilla-central extension");
const defines = { ...DEFINES, MOZCENTRAL: true };
const gvDefines = { ...defines, GECKOVIEW: true };
@ -1344,12 +1400,12 @@ gulp.task(
createWorkerBundle(defines).pipe(
gulp.dest(MOZCENTRAL_CONTENT_DIR + "build")
),
createWebBundle(defines).pipe(
gulp.dest(MOZCENTRAL_CONTENT_DIR + "web")
),
createGVWebBundle(gvDefines).pipe(
createWebBundle(defines, { defaultPreferencesDir: "mozcentral/" }).pipe(
gulp.dest(MOZCENTRAL_CONTENT_DIR + "web")
),
createGVWebBundle(gvDefines, {
defaultPreferencesDir: "mozcentral/",
}).pipe(gulp.dest(MOZCENTRAL_CONTENT_DIR + "web")),
gulp
.src(MOZCENTRAL_WEB_FILES, { base: "web/", encoding: false })
.pipe(gulp.dest(MOZCENTRAL_CONTENT_DIR + "web")),
@ -1401,18 +1457,6 @@ gulp.task(
)
);
function createChromiumPrefsSchema() {
console.log("\n### Building Chromium preferences file");
const prefs = getDefaultPreferences("chromium/");
const chromiumPrefs = buildPrefsSchema(prefs);
return createStringSource(
"preferences_schema.json",
JSON.stringify(chromiumPrefs, null, 2)
);
}
gulp.task(
"chromium",
gulp.series(
@ -1425,8 +1469,12 @@ gulp.task(
createTemporaryScriptingBundle(defines),
]);
},
async function prefsChromium() {
await parseDefaultPreferences("chromium/");
},
function createChromium() {
console.log("\n### Building Chromium extension");
console.log();
console.log("### Building Chromium extension");
const defines = { ...DEFINES, CHROME: true, SKIP_BABEL: false };
const CHROME_BUILD_DIR = BUILD_DIR + "/chromium/",
@ -1452,7 +1500,7 @@ gulp.task(
createSandboxBundle(defines).pipe(
gulp.dest(CHROME_BUILD_CONTENT_DIR + "build")
),
createWebBundle(defines).pipe(
createWebBundle(defines, { defaultPreferencesDir: "chromium/" }).pipe(
gulp.dest(CHROME_BUILD_CONTENT_DIR + "web")
),
gulp
@ -1501,19 +1549,22 @@ gulp.task(
.pipe(replace(/\bPDFJSSCRIPT_VERSION\b/g, version))
.pipe(gulp.dest(CHROME_BUILD_DIR)),
gulp
.src(["extensions/chromium/**/*.{html,js,css,png}"], {
base: "extensions/chromium/",
encoding: false,
})
.src(
[
"extensions/chromium/**/*.{html,js,css,png}",
"extensions/chromium/preferences_schema.json",
],
{ base: "extensions/chromium/", encoding: false }
)
.pipe(gulp.dest(CHROME_BUILD_DIR)),
createChromiumPrefsSchema().pipe(gulp.dest(CHROME_BUILD_DIR)),
]);
}
)
);
gulp.task("jsdoc", function (done) {
console.log("\n### Generating documentation (JSDoc)");
console.log();
console.log("### Generating documentation (JSDoc)");
fs.rmSync(JSDOC_BUILD_DIR, { recursive: true, force: true });
fs.mkdirSync(JSDOC_BUILD_DIR, { recursive: true });
@ -1586,6 +1637,9 @@ function buildLib(defines, dir) {
BUNDLE_VERSION: versionInfo.version,
BUNDLE_BUILD: versionInfo.commit,
TESTING: defines.TESTING ?? process.env.TESTING === "true",
DEFAULT_PREFERENCES: getDefaultPreferences(
defines.SKIP_BABEL ? "lib/" : "lib-legacy/"
),
DEFAULT_FTL: getDefaultFtl(),
};
@ -1604,8 +1658,6 @@ function buildLib(defines, dir) {
gulp.src("test/unit/*.js", { base: ".", encoding: false }),
gulp.src("external/openjpeg/*.js", { base: "openjpeg/", encoding: false }),
gulp.src("external/qcms/*.js", { base: "qcms/", encoding: false }),
gulp.src("external/jbig2/*.js", { base: "jbig2/", encoding: false }),
gulp.src("external/brotli/*.js", { base: "brotli/", encoding: false }),
]);
return buildLibHelper(bundleDefines, inputStream, dir);
@ -1617,7 +1669,13 @@ gulp.task(
createBuildNumber,
function scriptingLib() {
const defines = { ...DEFINES, GENERIC: true, LIB: true };
return createTemporaryScriptingBundle(defines);
return ordered([
buildDefaultPreferences(defines, "lib/"),
createTemporaryScriptingBundle(defines),
]);
},
async function prefsLib() {
await parseDefaultPreferences("lib/");
},
function createLib() {
const defines = { ...DEFINES, GENERIC: true, LIB: true };
@ -1641,7 +1699,13 @@ gulp.task(
LIB: true,
SKIP_BABEL: false,
};
return createTemporaryScriptingBundle(defines);
return ordered([
buildDefaultPreferences(defines, "lib-legacy/"),
createTemporaryScriptingBundle(defines),
]);
},
async function prefsLibLegacy() {
await parseDefaultPreferences("lib-legacy/");
},
function createLibLegacy() {
const defines = {
@ -1824,49 +1888,6 @@ gulp.task(
)
);
gulp.task(
"prefstest",
gulp.series(
setTestEnv,
function genericPrefs() {
const defines = { ...DEFINES, GENERIC: true };
return buildDefaultPreferences(defines, "generic/");
},
function genericLegacyPrefs() {
const defines = { ...DEFINES, GENERIC: true, SKIP_BABEL: false };
return buildDefaultPreferences(defines, "generic-legacy/");
},
function chromiumPrefs() {
const defines = { ...DEFINES, CHROME: true, SKIP_BABEL: false };
return buildDefaultPreferences(defines, "chromium/");
},
function mozcentralPrefs() {
const defines = { ...DEFINES, MOZCENTRAL: true };
return buildDefaultPreferences(defines, "mozcentral/");
},
function checkPrefs() {
console.log("\n### Checking preference generation");
// Check that the preferences were correctly generated,
// for all the relevant builds.
for (const dir of [
"generic/",
"generic-legacy/",
"chromium/",
"mozcentral/",
]) {
getDefaultPreferences(dir);
}
// Check that all the relevant files can be generated.
return ordered([
createChromiumPrefsSchema().pipe(gulp.dest(PREFSTEST_DIR)),
createDefaultPrefsFile().pipe(gulp.dest(PREFSTEST_DIR)),
]);
}
)
);
gulp.task(
"typestest",
gulp.series(
@ -1900,7 +1921,8 @@ gulp.task(
);
function createBaseline(done) {
console.log("\n### Creating baseline environment");
console.log();
console.log("### Creating baseline environment");
const baselineCommit = process.env.BASELINE;
if (!baselineCommit) {
@ -1961,7 +1983,8 @@ gulp.task(
);
gulp.task("lint", function (done) {
console.log("\n### Linting JS/CSS/JSON/SVG/HTML files");
console.log();
console.log("### Linting JS/CSS/JSON/SVG files");
// Ensure that we lint the Firefox specific *.jsm files too.
const esLintOptions = [
@ -1985,10 +2008,9 @@ gulp.task("lint", function (done) {
const prettierOptions = [
"node_modules/prettier/bin/prettier.cjs",
"**/*.json",
"**/*.html",
];
if (process.argv.includes("--fix")) {
prettierOptions.push("--log-level", "error", "--write");
prettierOptions.push("--log-level", "silent", "--write");
} else {
prettierOptions.push("--log-level", "warn", "--check");
}
@ -2039,31 +2061,36 @@ gulp.task("lint", function (done) {
});
gulp.task(
"lint-mozcentral",
gulp.series("mozcentral", function runLintMozcentral(done) {
console.log("\n### Checking mozilla-central files");
"lint-chromium",
gulp.series(
function scriptingLintChromium() {
const defines = {
...DEFINES,
CHROME: true,
SKIP_BABEL: false,
TESTING: false,
};
return buildDefaultPreferences(defines, "lint-chromium/");
},
async function prefsLintChromium() {
await parseDefaultPreferences("lint-chromium/");
},
function runLintChromium(done) {
console.log();
console.log("### Checking supplemental Chromium files");
const styleLintOptions = [
"../../node_modules/stylelint/bin/stylelint.mjs",
"**/*.css",
"--report-needless-disables",
"--config",
"../../stylelint-mozcentral.json",
];
const styleLintProcess = startNode(styleLintOptions, {
stdio: "inherit",
cwd: BUILD_DIR + "mozcentral/",
});
styleLintProcess.on("close", function (styleLintCode) {
if (styleLintCode !== 0) {
done(new Error("Stylelint failed."));
if (
!checkChromePreferencesFile(
"extensions/chromium/preferences_schema.json",
getDefaultPreferences("lint-chromium/")
)
) {
done(new Error("chromium/preferences_schema is not in sync."));
return;
}
console.log("files checked, no errors found");
done();
});
})
}
)
);
gulp.task("dev-wasm", function () {
@ -2085,7 +2112,8 @@ gulp.task(
});
},
function createDevSandbox() {
console.log("\n### Building development sandbox");
console.log();
console.log("### Building development sandbox");
const defines = { ...DEFINES, GENERIC: true, TESTING: true };
const sandboxDir = BUILD_DIR + "dev-sandbox/";
@ -2111,7 +2139,7 @@ gulp.task(
},
function watchWasm() {
gulp.watch(
["external/openjpeg/*", "external/qcms/*", "external/jbig2/*"],
["external/openjpeg/*", "external/qcms/*"],
{ ignoreInitial: false },
gulp.series("dev-wasm")
);
@ -2129,7 +2157,8 @@ gulp.task(
);
},
async function createServer() {
console.log("\n### Starting local server");
console.log();
console.log("### Starting local server");
let port = 8888;
const i = process.argv.indexOf("--port");
@ -2150,7 +2179,8 @@ gulp.task(
);
gulp.task("clean", function (done) {
console.log("\n### Cleaning up project builds");
console.log();
console.log("### Cleaning up project builds");
fs.rmSync(BUILD_DIR, { recursive: true, force: true });
done();
@ -2159,7 +2189,8 @@ gulp.task("clean", function (done) {
gulp.task("importl10n", async function () {
const { downloadL10n } = await import("./external/importL10n/locales.mjs");
console.log("\n### Importing translations from mozilla-central");
console.log();
console.log("### Importing translations from mozilla-central");
if (!fs.existsSync(L10N_DIR)) {
fs.mkdirSync(L10N_DIR);
@ -2168,7 +2199,8 @@ gulp.task("importl10n", async function () {
});
function ghPagesPrepare() {
console.log("\n### Creating web site");
console.log();
console.log("### Creating web site");
fs.rmSync(GH_PAGES_DIR, { recursive: true, force: true });
@ -2269,8 +2301,7 @@ function packageJson() {
bugs: DIST_BUGS_URL,
license: DIST_LICENSE,
optionalDependencies: {
"@napi-rs/canvas": "^0.1.88",
"node-readable-to-web-readable-stream": "^0.4.2",
"@napi-rs/canvas": "^0.1.67",
},
browser: {
canvas: false,
@ -2437,7 +2468,8 @@ gulp.task(
gulp.task(
"mozcentralbaseline",
gulp.series(createBaseline, function createMozcentralBaseline(done) {
console.log("\n### Creating mozcentral baseline environment");
console.log();
console.log("### Creating mozcentral baseline environment");
// Create a mozcentral build.
fs.rmSync(BASELINE_DIR + BUILD_DIR, { recursive: true, force: true });
@ -2474,7 +2506,8 @@ gulp.task(
"mozcentral",
"mozcentralbaseline",
function createMozcentralDiff(done) {
console.log("\n### Creating mozcentral diff");
console.log();
console.log("### Creating mozcentral diff");
// Create the diff between the current mozcentral build and the
// baseline mozcentral build, which both exist at this point.
@ -2516,12 +2549,14 @@ gulp.task(
);
gulp.task("externaltest", function (done) {
console.log("\n### Running test-fixtures.js");
console.log();
console.log("### Running test-fixtures.js");
safeSpawnSync("node", ["external/builder/test-fixtures.mjs"], {
stdio: "inherit",
});
console.log("\n### Running test-fixtures_babel.js");
console.log();
console.log("### Running test-fixtures_babel.js");
safeSpawnSync("node", ["external/builder/test-fixtures_babel.mjs"], {
stdio: "inherit",
});

View File

@ -71,12 +71,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Jami me gin acoya…
pdfjs-document-properties-file-name = Nying pwail:
pdfjs-document-properties-file-size = Dit pa pwail:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Wiye:
pdfjs-document-properties-author = Ngat mucoyo:
pdfjs-document-properties-subject = Subjek:
pdfjs-document-properties-keywords = Lok mapire tek:
pdfjs-document-properties-creation-date = Nino dwe me cwec:
pdfjs-document-properties-modification-date = Nino dwe me yub:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Lacwec:
pdfjs-document-properties-producer = Layub PDF:
pdfjs-document-properties-version = Kit PDF:
@ -173,6 +185,9 @@ pdfjs-page-scale-actual = Dite kikome
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = Bal otime kun cano PDF.
@ -198,3 +213,63 @@ pdfjs-password-invalid = Mung me donyo pe atir. Tim ber i tem doki.
pdfjs-password-ok-button = OK
pdfjs-password-cancel-button = Juki
pdfjs-web-fonts-disabled = Kijuko dit pa coc me kakube woko: pe romo tic ki dit pa coc me PDF ma kiketo i kine.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -71,17 +71,37 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Dokumenteienskappe…
pdfjs-document-properties-file-name = Lêernaam:
pdfjs-document-properties-file-size = Lêergrootte:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } kG ({ $size_b } grepe)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MG ({ $size_b } grepe)
pdfjs-document-properties-title = Titel:
pdfjs-document-properties-author = Outeur:
pdfjs-document-properties-subject = Onderwerp:
pdfjs-document-properties-keywords = Sleutelwoorde:
pdfjs-document-properties-creation-date = Skeppingsdatum:
pdfjs-document-properties-modification-date = Wysigingsdatum:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Skepper:
pdfjs-document-properties-producer = PDF-vervaardiger:
pdfjs-document-properties-version = PDF-weergawe:
pdfjs-document-properties-page-count = Aantal bladsye:
## Variables:
## $width (Number) - the width of the (current) page
## $height (Number) - the height of the (current) page
## $unit (String) - the unit of measurement of the (current) page
## $name (String) - the name of the (current) page
## $orientation (String) - the orientation of the (current) page
##
pdfjs-document-properties-close-button = Sluit
@ -152,6 +172,9 @@ pdfjs-page-scale-actual = Werklike grootte
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = 'n Fout het voorgekom met die laai van die PDF.
@ -177,3 +200,63 @@ pdfjs-password-invalid = Ongeldige wagwoord. Probeer gerus weer.
pdfjs-password-ok-button = OK
pdfjs-password-cancel-button = Kanselleer
pdfjs-web-fonts-disabled = Webfonte is gedeaktiveer: kan nie PDF-fonte wat ingebed is, gebruik nie.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -89,12 +89,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Propiedatz d'o documento...
pdfjs-document-properties-file-name = Nombre de fichero:
pdfjs-document-properties-file-size = Grandaria d'o fichero:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Titol:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Afer:
pdfjs-document-properties-keywords = Parolas clau:
pdfjs-document-properties-creation-date = Calendata de creyación:
pdfjs-document-properties-modification-date = Calendata de modificación:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creyador:
pdfjs-document-properties-producer = Creyador de PDF:
pdfjs-document-properties-version = Versión de PDF:
@ -201,6 +213,9 @@ pdfjs-page-scale-actual = Grandaria actual
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = S'ha produciu una error en cargar o PDF.
@ -211,6 +226,10 @@ pdfjs-rendering-error = Ha ocurriu una error en renderizar a pachina.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -226,3 +245,63 @@ pdfjs-password-invalid = Clau invalida. Torna a intentar-lo.
pdfjs-password-ok-button = Acceptar
pdfjs-password-cancel-button = Cancelar
pdfjs-web-fonts-disabled = As fuents web son desactivadas: no se puet incrustar fichers PDF.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } م.بايت ({ $b } بايتات)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } ك.بايت ({ $size_b } بايت)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } م.بايت ({ $size_b } بايت)
pdfjs-document-properties-title = العنوان:
pdfjs-document-properties-author = المؤلف:
pdfjs-document-properties-subject = الموضوع:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = تاريخ التعديل:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }، { $time }
pdfjs-document-properties-creator = المنشئ:
pdfjs-document-properties-producer = منتج PDF:
pdfjs-document-properties-version = إصدارة PDF:
@ -271,6 +283,10 @@ pdfjs-rendering-error = حدث خطأ أثناء عرض الصفحة.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }، { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -308,25 +324,9 @@ pdfjs-highlight-floating-button1 =
.title = أبرِز
.aria-label = أبرِز
pdfjs-highlight-floating-button-label = أبرِز
pdfjs-editor-signature-button =
.title = أضِف توقيع
pdfjs-editor-signature-button-label = أضِف توقيع
## Default editor aria labels
# “Highlight” is a noun, the string is used on the editor for highlights.
pdfjs-editor-highlight-editor =
.aria-label = محرِّر الإبراز
# “Drawing” is a noun, the string is used on the editor for drawings.
pdfjs-editor-ink-editor =
.aria-label = محرِّر الرسم
# Used when a signature editor is selected/hovered.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-signature-editor1 =
.aria-description = محرِّر التوقيع: { $description }
pdfjs-editor-stamp-editor =
.aria-label = محرِّر الصور
## Remove button for the various kind of editor.
@ -356,26 +356,24 @@ pdfjs-editor-stamp-add-image-button-label = أضِف صورة
pdfjs-editor-free-highlight-thickness-input = السماكة
pdfjs-editor-free-highlight-thickness-title =
.title = غيّر السُمك عند إبراز عناصر أُخرى غير النص
pdfjs-editor-add-signature-container =
.aria-label = عناصر التحكم في التوقيع والتوقيعات المحفوظة
pdfjs-editor-signature-add-signature-button =
.title = أضِف توقيع جديد
pdfjs-editor-signature-add-signature-button-label = أضِف توقيع جديد
# Used on the button to use an already saved signature.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-add-saved-signature-button =
.title = التوقيع المحفوظ: { $description }
# .default-content is used as a placeholder in an empty text editor.
pdfjs-free-text2 =
.aria-label = محرِّر النص
.default-content = ابدأ في كتابة…
pdfjs-free-text =
.aria-label = محرِّر النص
pdfjs-free-text-default-content = ابدأ الكتابة…
pdfjs-ink =
.aria-label = محرِّر الرسم
pdfjs-ink-canvas =
.aria-label = صورة أنشأها المستخدم
## Alt-text dialog
pdfjs-editor-alt-text-button-label = نص بديل
pdfjs-editor-alt-text-edit-button =
.aria-label = حرّر النص البديل
pdfjs-editor-alt-text-edit-button-label = تحرير النص البديل
pdfjs-editor-alt-text-dialog-label = اختر خيار
pdfjs-editor-alt-text-dialog-description = يساعد النص البديل عندما لا يتمكن الأشخاص من رؤية الصورة أو عندما لا يتم تحميلها.
pdfjs-editor-alt-text-add-description-label = أضِف وصف
@ -395,6 +393,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = الزاوية اليُسرى العُليا — غيّر الحجم
pdfjs-editor-resizer-label-top-middle = أعلى الوسط - غيّر الحجم
pdfjs-editor-resizer-label-top-right = الزاوية اليُمنى العُليا - غيّر الحجم
pdfjs-editor-resizer-label-middle-right = اليمين الأوسط - غيّر الحجم
pdfjs-editor-resizer-label-bottom-right = الزاوية اليُمنى السُفلى - غيّر الحجم
pdfjs-editor-resizer-label-bottom-middle = أسفل الوسط - غيّر الحجم
pdfjs-editor-resizer-label-bottom-left = الزاوية اليُسرى السُفلية - غيّر الحجم
pdfjs-editor-resizer-label-middle-left = مُنتصف اليسار - غيّر الحجم
pdfjs-editor-resizer-top-left =
.aria-label = الزاوية اليُسرى العُليا — غيّر الحجم
pdfjs-editor-resizer-top-middle =
@ -578,18 +584,12 @@ pdfjs-editor-add-signature-error-close-button = أغلق
pdfjs-editor-add-signature-cancel-button = ألغِ
pdfjs-editor-add-signature-add-button = أضِف
pdfjs-editor-edit-signature-update-button = حدّث
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =
.title = أزِل التوقيع المحفوظ
pdfjs-editor-delete-signature-button-label1 = أزِل التوقيع المحفوظ
## Editor toolbar
pdfjs-editor-add-signature-edit-button-label = عدّل الوصف
## Edit signature description dialog
pdfjs-editor-edit-signature-dialog-title = عدّل الوصف

View File

@ -77,10 +77,22 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Propiedaes del documentu…
pdfjs-document-properties-file-name = Nome del ficheru:
pdfjs-document-properties-file-size = Tamañu del ficheru:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Títulu:
pdfjs-document-properties-keywords = Pallabres clave:
pdfjs-document-properties-creation-date = Data de creación:
pdfjs-document-properties-modification-date = Data de modificación:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-producer = Productor del PDF:
pdfjs-document-properties-version = Versión del PDF:
pdfjs-document-properties-page-count = Númberu de páxines:
@ -166,7 +178,74 @@ pdfjs-page-landmark =
pdfjs-loading-error = Asocedió un fallu mentanto se cargaba'l PDF.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
## Password
pdfjs-password-ok-button = Aceptar
pdfjs-password-cancel-button = Encaboxar
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -89,12 +89,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Sənəd xüsusiyyətləri…
pdfjs-document-properties-file-name = Fayl adı:
pdfjs-document-properties-file-size = Fayl ölçüsü:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bayt)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bayt)
pdfjs-document-properties-title = Başlık:
pdfjs-document-properties-author = Müəllif:
pdfjs-document-properties-subject = Mövzu:
pdfjs-document-properties-keywords = Açar sözlər:
pdfjs-document-properties-creation-date = Yaradılış Tarixi :
pdfjs-document-properties-modification-date = Dəyişdirilmə Tarixi :
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Yaradan:
pdfjs-document-properties-producer = PDF yaradıcısı:
pdfjs-document-properties-version = PDF versiyası:
@ -201,6 +213,9 @@ pdfjs-page-scale-actual = Hazırkı Həcm
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = PDF yüklenərkən bir səhv yarandı.
@ -211,6 +226,10 @@ pdfjs-rendering-error = Səhifə göstərilərkən səhv yarandı.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -226,3 +245,63 @@ pdfjs-password-invalid = Parol səhvdir. Bir daha yoxlayın.
pdfjs-password-ok-button = Tamam
pdfjs-password-cancel-button = Ləğv et
pdfjs-web-fonts-disabled = Web Şriftlər söndürülüb: yerləşdirilmiş PDF şriftlərini istifadə etmək mümkün deyil.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } МБ ({ $b } байтаў)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } КБ ({ $size_b } байт)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } МБ ({ $size_b } байт)
pdfjs-document-properties-title = Загаловак:
pdfjs-document-properties-author = Аўтар:
pdfjs-document-properties-subject = Тэма:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Дата змянення:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Стваральнік:
pdfjs-document-properties-producer = Вырабнік PDF:
pdfjs-document-properties-version = Версія PDF:
@ -265,6 +277,10 @@ pdfjs-rendering-error = Здарылася памылка падчас адлю
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -288,13 +304,9 @@ pdfjs-web-fonts-disabled = Шрыфты Сеціва забаронены: не
pdfjs-editor-free-text-button =
.title = Тэкст
pdfjs-editor-color-picker-free-text-input =
.title = Змяніць колер тэксту
pdfjs-editor-free-text-button-label = Тэкст
pdfjs-editor-ink-button =
.title = Маляваць
pdfjs-editor-color-picker-ink-input =
.title = Змяніць колер малюнка
pdfjs-editor-ink-button-label = Маляваць
pdfjs-editor-stamp-button =
.title = Дадаць або змяніць выявы
@ -306,14 +318,6 @@ pdfjs-highlight-floating-button1 =
.title = Падфарбаваць
.aria-label = Падфарбаваць
pdfjs-highlight-floating-button-label = Падфарбаваць
pdfjs-comment-floating-button =
.title = Каментаваць
.aria-label = Каментаваць
pdfjs-comment-floating-button-label = Каментаваць
pdfjs-editor-comment-button =
.title = Каментарый
.aria-label = Каментарый
pdfjs-editor-comment-button-label = Каментарый
pdfjs-editor-signature-button =
.title = Дадаць подпіс
pdfjs-editor-signature-button-label = Дадаць подпіс
@ -376,28 +380,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Тэкставы рэдактар
.default-content = Пачніце ўводзіць…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Каментарый
[few] Каментарыі
*[many] Каментарыі
}
pdfjs-editor-comments-sidebar-close-button =
.title = Закрыць бакавую панэль
.aria-label = Закрыць бакавую панэль
pdfjs-editor-comments-sidebar-close-button-label = Закрыць бакавую панэль
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Бачыце штосьці вартае ўвагі? Вылучыце і пакіньце каментарый.
pdfjs-editor-comments-sidebar-no-comments-link = Падрабязней
pdfjs-free-text =
.aria-label = Тэкставы рэдактар
pdfjs-free-text-default-content = Пачніце набор тэксту…
pdfjs-ink =
.aria-label = Графічны рэдактар
pdfjs-ink-canvas =
.aria-label = Выява, створаная карыстальнікам
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Альтэрнатыўны тэкст
pdfjs-editor-alt-text-edit-button =
.aria-label = Змяніць альтэрнатыўны тэкст
pdfjs-editor-alt-text-edit-button-label = Змяніць альтэрнатыўны тэкст
pdfjs-editor-alt-text-dialog-label = Выберыце варыянт
pdfjs-editor-alt-text-dialog-description = Альтэрнатыўны тэкст дапамагае, калі людзі не бачаць выяву або калі яна не загружаецца.
pdfjs-editor-alt-text-add-description-label = Дадаць апісанне
@ -417,6 +413,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Верхні левы кут — змяніць памер
pdfjs-editor-resizer-label-top-middle = Уверсе пасярэдзіне — змяніць памер
pdfjs-editor-resizer-label-top-right = Верхні правы кут — змяніць памер
pdfjs-editor-resizer-label-middle-right = Пасярэдзіне справа — змяніць памер
pdfjs-editor-resizer-label-bottom-right = Правы ніжні кут — змяніць памер
pdfjs-editor-resizer-label-bottom-middle = Пасярэдзіне ўнізе — змяніць памер
pdfjs-editor-resizer-label-bottom-left = Левы ніжні кут — змяніць памер
pdfjs-editor-resizer-label-middle-left = Пасярэдзіне злева — змяніць памер
pdfjs-editor-resizer-top-left =
.aria-label = Верхні левы кут — змяніць памер
pdfjs-editor-resizer-top-middle =
@ -522,14 +526,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Адразу пака
pdfjs-editor-alt-text-settings-show-dialog-description = Дапамагае пераканацца, што ўсе вашы выявы маюць альтэрнатыўны тэкст.
pdfjs-editor-alt-text-settings-close-button = Закрыць
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Вылучэнне дададзена
pdfjs-editor-freetext-added-alert = Тэкст дададзены
pdfjs-editor-ink-added-alert = Малюнак дададзены
pdfjs-editor-stamp-added-alert = Выява дададзена
pdfjs-editor-signature-added-alert = Подпіс дададзены
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Падсвятленне выдалена
@ -599,8 +595,6 @@ pdfjs-editor-add-signature-save-checkbox = Захаваць подпіс
pdfjs-editor-add-signature-save-warning-message = Вы дасягнулі ліміту ў 5 захаваных подпісаў. Выдаліце адзін, каб захаваць іншы.
pdfjs-editor-add-signature-image-upload-error-title = Не ўдалося загрузіць выяву
pdfjs-editor-add-signature-image-upload-error-description = Праверце падключэнне да сеткі ці паспрабуйце іншую выяву.
pdfjs-editor-add-signature-image-no-data-error-title = Не ўдалося пераўтварыць гэту выяву ў подпіс
pdfjs-editor-add-signature-image-no-data-error-description = Калі ласка, паспрабуйце зацягнуць іншую выяву.
pdfjs-editor-add-signature-error-close-button = Закрыць
## Dialog buttons
@ -609,34 +603,6 @@ pdfjs-editor-add-signature-cancel-button = Скасаваць
pdfjs-editor-add-signature-add-button = Дадаць
pdfjs-editor-edit-signature-update-button = Абнавіць
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Змяніць каментарый
pdfjs-editor-edit-comment-popup-button =
.title = Змяніць каментарый
pdfjs-editor-delete-comment-popup-button-label = Выдаліць каментарый
pdfjs-editor-delete-comment-popup-button =
.title = Выдаліць каментарый
pdfjs-show-comment-button =
.title = Паказаць каментарый
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Змяніць каментарый
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Абнавіць
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Дадаць каментарый
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Дадаць
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Пачніце набор тэксту…
pdfjs-editor-edit-comment-dialog-cancel-button = Скасаваць
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Дадаць каментарый
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } МБ ({ $b } байта)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } КБ ({ $size_b } байта)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } МБ ({ $size_b } байта)
pdfjs-document-properties-title = Заглавие:
pdfjs-document-properties-author = Автор:
pdfjs-document-properties-subject = Тема:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Дата на промяна:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Създател:
pdfjs-document-properties-producer = PDF произведен от:
pdfjs-document-properties-version = Издание на PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Грешка при изчертаване на стра
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -294,6 +310,9 @@ pdfjs-editor-stamp-button =
.title = Добавяне или променяне на изображения
pdfjs-editor-stamp-button-label = Добавяне или променяне на изображения
## Default editor aria labels
## Remove button for the various kind of editor.
pdfjs-editor-remove-ink-button =
@ -320,11 +339,18 @@ pdfjs-editor-stamp-add-image-button-label = Добавяне на изображ
pdfjs-free-text2 =
.aria-label = Текстов редактор
.default-content = Започнете да пишете…
pdfjs-editor-comments-sidebar-close-button-label = Затваряне на страничната лента
pdfjs-free-text =
.aria-label = Текстов редактор
pdfjs-free-text-default-content = Започнете да пишете…
pdfjs-ink =
.aria-label = Промяна на рисунка
pdfjs-ink-canvas =
.aria-label = Изображение, създадено от потребител
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Алтернативен текст
pdfjs-editor-alt-text-edit-button-label = Промяна на алтернативния текст
pdfjs-editor-alt-text-dialog-label = Изберете от възможностите
pdfjs-editor-alt-text-dialog-description = Алтернативният текст помага на потребителите, когато не могат да видят изображението или то не се зарежда.
pdfjs-editor-alt-text-add-description-label = Добавяне на описание
@ -341,6 +367,14 @@ pdfjs-editor-alt-text-textarea =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Горен ляв ъгъл — преоразмеряване
pdfjs-editor-resizer-label-top-middle = Горе в средата — преоразмеряване
pdfjs-editor-resizer-label-top-right = Горен десен ъгъл — преоразмеряване
pdfjs-editor-resizer-label-middle-right = Дясно в средата — преоразмеряване
pdfjs-editor-resizer-label-bottom-right = Долен десен ъгъл — преоразмеряване
pdfjs-editor-resizer-label-bottom-middle = Долу в средата — преоразмеряване
pdfjs-editor-resizer-label-bottom-left = Долен ляв ъгъл — преоразмеряване
pdfjs-editor-resizer-label-middle-left = Ляво в средата — преоразмеряване
pdfjs-editor-resizer-top-left =
.aria-label = Горен ляв ъгъл — преоразмеряване
pdfjs-editor-resizer-top-middle =
@ -377,12 +411,41 @@ pdfjs-editor-colorpicker-pink =
pdfjs-editor-colorpicker-red =
.title = Червено
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
pdfjs-editor-new-alt-text-disclaimer-learn-more-url = Научете повече
pdfjs-editor-new-alt-text-not-now-button = Не сега
## Image alt-text settings
pdfjs-editor-alt-text-settings-delete-model-button = Изтриване
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -85,12 +85,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = নথি বৈশিষ্ট্য…
pdfjs-document-properties-file-name = ফাইলের নাম:
pdfjs-document-properties-file-size = ফাইলের আকার:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } কেবি ({ $size_b } বাইট)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } এমবি ({ $size_b } বাইট)
pdfjs-document-properties-title = শিরোনাম:
pdfjs-document-properties-author = লেখক:
pdfjs-document-properties-subject = বিষয়:
pdfjs-document-properties-keywords = কীওয়ার্ড:
pdfjs-document-properties-creation-date = তৈরির তারিখ:
pdfjs-document-properties-modification-date = পরিবর্তনের তারিখ:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = প্রস্তুতকারক:
pdfjs-document-properties-producer = পিডিএফ প্রস্তুতকারক:
pdfjs-document-properties-version = পিডিএফ সংষ্করণ:
@ -191,6 +203,9 @@ pdfjs-page-scale-actual = প্রকৃত আকার
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = পিডিএফ লোড করার সময় ত্রুটি দেখা দিয়েছে।
@ -201,6 +216,10 @@ pdfjs-rendering-error = পাতা উপস্থাপনার সময়
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -216,3 +235,63 @@ pdfjs-password-invalid = ভুল পাসওয়ার্ড। অনুগ
pdfjs-password-ok-button = ঠিক আছে
pdfjs-password-cancel-button = বাতিল
pdfjs-web-fonts-disabled = ওয়েব ফন্ট নিষ্ক্রিয়: সংযুক্ত পিডিএফ ফন্ট ব্যবহার করা যাচ্ছে না।
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -89,12 +89,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Document Properties…
pdfjs-document-properties-file-name = File name:
pdfjs-document-properties-file-size = File size:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Title:
pdfjs-document-properties-author = Author:
pdfjs-document-properties-subject = Subject:
pdfjs-document-properties-keywords = Keywords:
pdfjs-document-properties-creation-date = Creation Date:
pdfjs-document-properties-modification-date = Modification Date:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creator:
pdfjs-document-properties-producer = PDF Producer:
pdfjs-document-properties-version = PDF Version:
@ -195,6 +207,9 @@ pdfjs-page-scale-actual = Actual Size
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = An error occurred while loading the PDF.
@ -220,3 +235,63 @@ pdfjs-password-invalid = Invalid password. Please try again.
pdfjs-password-ok-button = OK
pdfjs-password-cancel-button = Cancel
pdfjs-web-fonts-disabled = Web fonts are disabled: unable to use embedded PDF fonts.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -99,12 +99,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Perzhioù an teul…
pdfjs-document-properties-file-name = Anv restr:
pdfjs-document-properties-file-size = Ment ar restr:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } Ke ({ $size_b } eizhbit)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } Me ({ $size_b } eizhbit)
pdfjs-document-properties-title = Titl:
pdfjs-document-properties-author = Aozer:
pdfjs-document-properties-subject = Danvez:
pdfjs-document-properties-keywords = Gerioù-alc'hwez:
pdfjs-document-properties-creation-date = Deiziad krouiñ:
pdfjs-document-properties-modification-date = Deiziad kemmañ:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Krouer:
pdfjs-document-properties-producer = Kenderc'her PDF:
pdfjs-document-properties-version = Handelv PDF:
@ -194,7 +206,7 @@ pdfjs-find-previous-button-label = Kent
pdfjs-find-next-button =
.title = Kavout an tamm frazenn war-lerc'h o klotañ ganti
pdfjs-find-next-button-label = War-lerc'h
pdfjs-find-highlight-checkbox = Sklêrijennañ pep tra
pdfjs-find-highlight-checkbox = Usskediñ pep tra
pdfjs-find-match-case-checkbox-label = Teurel evezh ouzh ar pennlizherennoù
pdfjs-find-match-diacritics-checkbox-label = Doujañ dan tiredoù
pdfjs-find-entire-word-checkbox-label = Gerioù a-bezh
@ -229,6 +241,10 @@ pdfjs-rendering-error = Degouezhet ez eus bet ur fazi e-pad skrammañ ar bajenna
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -256,13 +272,12 @@ pdfjs-editor-ink-button-label = Tresañ
pdfjs-editor-stamp-button =
.title = Ouzhpennañ pe aozañ skeudennoù
pdfjs-editor-stamp-button-label = Ouzhpennañ pe aozañ skeudennoù
pdfjs-editor-highlight-button =
.title = Sklerijennañ
pdfjs-editor-highlight-button-label = Sklerijennañ
pdfjs-highlight-floating-button1 =
.title = Sklerijennañ
.aria-label = Sklerijennañ
pdfjs-highlight-floating-button-label = Sklerijennañ
## Default editor aria labels
## Remove button for the various kind of editor.
##
@ -277,20 +292,25 @@ pdfjs-editor-stamp-add-image-button =
pdfjs-editor-stamp-add-image-button-label = Ouzhpennañ ur skeudenn
# This refers to the thickness of the line used for free highlighting (not bound to text)
pdfjs-editor-free-highlight-thickness-input = Tevded
pdfjs-free-text =
.aria-label = Aozer testennoù
pdfjs-ink =
.aria-label = Aozer tresoù
pdfjs-ink-canvas =
.aria-label = Skeudenn bet krouet gant an implijer·ez
## Alt-text dialog
pdfjs-editor-alt-text-add-description-label = Ouzhpennañ un deskrivadur
pdfjs-editor-alt-text-cancel-button = Nullañ
pdfjs-editor-alt-text-save-button = Enrollañ
# .placeholder: This is a placeholder for the alt text input area
pdfjs-editor-alt-text-textarea =
.placeholder = Da skouer, “Ur paotr yaouank ouzh taol o tebriñ boued”
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
# This means "Color used to highlight text"
pdfjs-editor-highlight-colorpicker-label = Liv sklêrijennañ
pdfjs-editor-colorpicker-button =
.title = Cheñch liv
pdfjs-editor-colorpicker-yellow =
@ -321,3 +341,30 @@ pdfjs-editor-alt-text-settings-delete-model-button = Dilemel
pdfjs-editor-alt-text-settings-download-model-button = Pellgargañ
pdfjs-editor-alt-text-settings-downloading-model-button = O pellgargañ…
pdfjs-editor-alt-text-settings-close-button = Serriñ
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -65,12 +65,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = फोरमान बिलाइनि आखुथाय...
pdfjs-document-properties-file-name = फाइलनि मुं:
pdfjs-document-properties-file-size = फाइलनि महर:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } बाइट)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } बाइट)
pdfjs-document-properties-title = बिमुं:
pdfjs-document-properties-author = लिरगिरि:
pdfjs-document-properties-subject = आयदा:
pdfjs-document-properties-keywords = गाहाय सोदोब:
pdfjs-document-properties-creation-date = सोरजिनाय अक्ट':
pdfjs-document-properties-modification-date = सुद्रायनाय अक्ट':
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = सोरजिग्रा:
pdfjs-document-properties-producer = PDF दिहुनग्रा:
pdfjs-document-properties-version = PDF बिसान:
@ -162,6 +174,9 @@ pdfjs-page-scale-actual = थार महर
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = PDF ल'ड खालामनाय समाव मोनसे गोरोन्थि जाबाय।
@ -172,6 +187,10 @@ pdfjs-rendering-error = बिलाइखौ राव सोलायनाय
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -187,3 +206,63 @@ pdfjs-password-invalid = बाहायजायै पासवार्ड।
pdfjs-password-ok-button = OK
pdfjs-password-cancel-button = नेवसि
pdfjs-web-fonts-disabled = वेब फन्टखौ लोरबां खालामबाय: अरजाबहोनाय PDF फन्टखौ बाहायनो हायाखै।
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -39,18 +39,6 @@ pdfjs-open-file-button-label = Otvori
pdfjs-print-button =
.title = Štampaj
pdfjs-print-button-label = Štampaj
pdfjs-save-button =
.title = Sačuvaj
pdfjs-save-button-label = Sačuvaj
# Used in Firefox for Android as a tooltip for the download button (“download” is a verb).
pdfjs-download-button =
.title = Preuzmi
# Used in Firefox for Android as a label for the download button (“download” is a verb).
# Length of the translation matters since we are in a mobile context, with limited screen estate.
pdfjs-download-button-label = Preuzmi
pdfjs-bookmark-button =
.title = Trenutna stranica (Prikaži URL sa trenutne stranice)
pdfjs-bookmark-button-label = Trenutna stranica
## Secondary toolbar and context menu
@ -75,27 +63,6 @@ pdfjs-cursor-text-select-tool-button-label = Alat za označavanje teksta
pdfjs-cursor-hand-tool-button =
.title = Omogući ručni alat
pdfjs-cursor-hand-tool-button-label = Ručni alat
pdfjs-scroll-page-button =
.title = Koristite pomicanje stranice
pdfjs-scroll-page-button-label = Pomicanje stranice
pdfjs-scroll-vertical-button =
.title = Koristite vertikalno pomicanje
pdfjs-scroll-vertical-button-label = Vertikalno pomicanje
pdfjs-scroll-horizontal-button =
.title = Koristite horizontalno pomicanje
pdfjs-scroll-horizontal-button-label = Horizontalno pomicanje
pdfjs-scroll-wrapped-button =
.title = Koristite omotno pomicanje
pdfjs-scroll-wrapped-button-label = Omotno pomicanje
pdfjs-spread-none-button =
.title = Ne izrađuj duplerice
pdfjs-spread-none-button-label = Bez duplerica
pdfjs-spread-odd-button =
.title = Izradi duplerice koje počinju s neparnim stranicama
pdfjs-spread-odd-button-label = Neparne duplerice
pdfjs-spread-even-button =
.title = Izradi duplerice koje počinju s parnim stranicama
pdfjs-spread-even-button-label = Parne duplerice
## Document properties dialog
@ -105,13 +72,13 @@ pdfjs-document-properties-button-label = Svojstva dokumenta...
pdfjs-document-properties-file-name = Naziv fajla:
pdfjs-document-properties-file-size = Veličina fajla:
# Variables:
# $kb (Number) - the PDF file size in kilobytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) } KB ({ $b } bajtova)
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bajta)
# Variables:
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bajtova)
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bajta)
pdfjs-document-properties-title = Naslov:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Predmet:
@ -119,8 +86,9 @@ pdfjs-document-properties-keywords = Ključne riječi:
pdfjs-document-properties-creation-date = Datum kreiranja:
pdfjs-document-properties-modification-date = Datum promjene:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Kreator:
pdfjs-document-properties-producer = PDF stvaratelj:
pdfjs-document-properties-version = PDF verzija:
@ -147,11 +115,6 @@ pdfjs-document-properties-page-size-dimension-name-string = { $width } × { $hei
##
# The linearization status of the document; usually called "Fast Web View" in
# English locales of Adobe software.
pdfjs-document-properties-linearized = Brzi web pregled:
pdfjs-document-properties-linearized-yes = Da
pdfjs-document-properties-linearized-no = Ne
pdfjs-document-properties-close-button = Zatvori
## Print
@ -168,8 +131,6 @@ pdfjs-printing-not-ready = Upozorenje: PDF nije u potpunosti učitan za štampan
pdfjs-toggle-sidebar-button =
.title = Uključi/isključi bočnu traku
pdfjs-toggle-sidebar-notification-button =
.title = Uključi/isključi bočnu traku (dokument sadrži obris/priloge/slojeve)
pdfjs-toggle-sidebar-button-label = Uključi/isključi bočnu traku
pdfjs-document-outline-button =
.title = Prikaži outline dokumenta (dvoklik za skupljanje/širenje svih stavki)
@ -177,19 +138,12 @@ pdfjs-document-outline-button-label = Konture dokumenta
pdfjs-attachments-button =
.title = Prikaži priloge
pdfjs-attachments-button-label = Prilozi
pdfjs-layers-button =
.title = Prikaži slojeve (dvostruki klik da biste vratili sve slojeve na zadano stanje)
pdfjs-layers-button-label = Slojevi
pdfjs-thumbs-button =
.title = Prikaži thumbnailove
pdfjs-thumbs-button-label = Thumbnailovi
pdfjs-current-outline-item-button =
.title = Pronađi trenutnu stavku strukture
pdfjs-current-outline-item-button-label = Trenutna stavka strukture
pdfjs-findbar-button =
.title = Pronađi u dokumentu
pdfjs-findbar-button-label = Pronađi
pdfjs-additional-layers = Dodatni slojevi
## Thumbnails panel item (tooltip and alt text for images)
@ -215,27 +169,8 @@ pdfjs-find-next-button =
pdfjs-find-next-button-label = Sljedeće
pdfjs-find-highlight-checkbox = Označi sve
pdfjs-find-match-case-checkbox-label = Osjetljivost na karaktere
pdfjs-find-match-diacritics-checkbox-label = Podudaranje dijakritika
pdfjs-find-entire-word-checkbox-label = Cijele riječi
pdfjs-find-reached-top = Dostigao sam vrh dokumenta, nastavljam sa dna
pdfjs-find-reached-bottom = Dostigao sam kraj dokumenta, nastavljam sa vrha
# Variables:
# $current (Number) - the index of the currently active find result
# $total (Number) - the total number of matches in the document
pdfjs-find-match-count =
{ $total ->
[one] { $current } od { $total } podudaranje
[few] { $current } od { $total } podudaranja
*[other] { $current } od { $total } podudaranja
}
# Variables:
# $limit (Number) - the maximum number of matches
pdfjs-find-match-count-limit =
{ $limit ->
[one] Više od { $limit } podudaranja
[few] Više od { $limit } podudaranja
*[other] Više od { $limit } podudaranja
}
pdfjs-find-not-found = Fraza nije pronađena
## Predefined zoom values
@ -250,10 +185,6 @@ pdfjs-page-scale-percent = { $scale }%
## PDF page
# Variables:
# $page (Number) - the page number
pdfjs-page-landmark =
.aria-label = Stranica { $page }
## Loading indicator messages
@ -272,9 +203,6 @@ pdfjs-rendering-error = Došlo je do greške prilikom renderiranja strane.
# Some common types are e.g.: "Check", "Text", "Comment", "Note"
pdfjs-text-annotation-type =
.alt = [{ $type } pribilješka]
# Variables:
# $dateObj (Date) - the modification date and time of the annotation
pdfjs-annotation-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
## Password
@ -286,303 +214,60 @@ pdfjs-web-fonts-disabled = Web fontovi su onemogućeni: nemoguće koristiti uba
## Editing
pdfjs-editor-free-text-button =
.title = Tekst
pdfjs-editor-free-text-button-label = Tekst
pdfjs-editor-ink-button =
.title = Crtanje
pdfjs-editor-ink-button-label = Crtanje
pdfjs-editor-stamp-button =
.title = Dodajte ili uredite slike
pdfjs-editor-stamp-button-label = Dodajte ili uredite slike
pdfjs-editor-highlight-button =
.title = Istaknite
pdfjs-editor-highlight-button-label = Istaknite
pdfjs-highlight-floating-button1 =
.title = Istaknite
.aria-label = Istaknite
pdfjs-highlight-floating-button-label = Istaknite
pdfjs-editor-signature-button =
.title = Dodaj potpis
pdfjs-editor-signature-button-label = Dodaj potpis
## Default editor aria labels
# “Highlight” is a noun, the string is used on the editor for highlights.
pdfjs-editor-highlight-editor =
.aria-label = Uređivač istaknutih elemenata
# “Drawing” is a noun, the string is used on the editor for drawings.
pdfjs-editor-ink-editor =
.aria-label = Uređivač crteža
# Used when a signature editor is selected/hovered.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-signature-editor1 =
.aria-description = Uređivač potpisa: { $description }
pdfjs-editor-stamp-editor =
.aria-label = Uređivač slika
## Remove button for the various kind of editor.
pdfjs-editor-remove-ink-button =
.title = Ukloni crtež
pdfjs-editor-remove-freetext-button =
.title = Ukloni tekst
pdfjs-editor-remove-stamp-button =
.title = Ukloni sliku
pdfjs-editor-remove-highlight-button =
.title = Ukloni istaknuti dio
pdfjs-editor-remove-signature-button =
.title = Ukloni potpis
##
# Editor Parameters
pdfjs-editor-free-text-color-input = Boja
pdfjs-editor-free-text-size-input = Veličina
pdfjs-editor-ink-color-input = Boja
pdfjs-editor-ink-thickness-input = Debljina
pdfjs-editor-ink-opacity-input = Neprozirnost
pdfjs-editor-stamp-add-image-button =
.title = Dodaj sliku
pdfjs-editor-stamp-add-image-button-label = Dodaj sliku
# This refers to the thickness of the line used for free highlighting (not bound to text)
pdfjs-editor-free-highlight-thickness-input = Debljina
pdfjs-editor-free-highlight-thickness-title =
.title = Promijenite debljinu prilikom označavanja stavki koje nisu tekst
pdfjs-editor-add-signature-container =
.aria-label = Kontrole potpisa i sačuvani potpisi
pdfjs-editor-signature-add-signature-button =
.title = Dodaj novi potpis
pdfjs-editor-signature-add-signature-button-label = Dodaj novi potpis
# Used on the button to use an already saved signature.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-add-saved-signature-button =
.title = Sačuvani potpis: { $description }
# .default-content is used as a placeholder in an empty text editor.
pdfjs-free-text2 =
.aria-label = Uređivač teksta
.default-content = Počnite kucati…
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alternativni tekst
pdfjs-editor-alt-text-edit-button =
.aria-label = Uredi alternativni tekst
pdfjs-editor-alt-text-dialog-label = Odaberite opciju
pdfjs-editor-alt-text-dialog-description = Alternativni tekst (Alt tekst) pomaže kada ljudi ne mogu vidjeti sliku ili kada se ona ne učitava.
pdfjs-editor-alt-text-add-description-label = Dodajte opis
pdfjs-editor-alt-text-add-description-description = Ciljajte na 1-2 rečenice koje opisuju temu, okruženje ili radnju.
pdfjs-editor-alt-text-mark-decorative-label = Označi kao dekorativno
pdfjs-editor-alt-text-mark-decorative-description = Ovo se koristi za ukrasne slike, poput okvira ili vodenih žigova.
pdfjs-editor-alt-text-cancel-button = Otkaži
pdfjs-editor-alt-text-save-button = Sačuvaj
pdfjs-editor-alt-text-decorative-tooltip = Označeno kao dekorativno
# .placeholder: This is a placeholder for the alt text input area
pdfjs-editor-alt-text-textarea =
.placeholder = Na primjer, „Mladić sjeda za stol da jede obrok“
# Alternative text (alt text) helps when people can't see the image.
pdfjs-editor-alt-text-button =
.aria-label = Alternativni tekst
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-top-left =
.aria-label = Gornji lijevi ugao — promjena veličine
pdfjs-editor-resizer-top-middle =
.aria-label = Gore u sredini — promijeni veličinu
pdfjs-editor-resizer-top-right =
.aria-label = Gornji desni ugao — promijeni veličinu
pdfjs-editor-resizer-middle-right =
.aria-label = Sredina desno — promijeni veličinu
pdfjs-editor-resizer-bottom-right =
.aria-label = Donji desni ugao — promijeni veličinu
pdfjs-editor-resizer-bottom-middle =
.aria-label = Donji srednji dio — promijeni veličinu
pdfjs-editor-resizer-bottom-left =
.aria-label = Donji lijevi ugao — promijeni veličinu
pdfjs-editor-resizer-middle-left =
.aria-label = Sredina lijevo — promijeni veličinu
## Color picker
# This means "Color used to highlight text"
pdfjs-editor-highlight-colorpicker-label = Boja isticanja
pdfjs-editor-colorpicker-button =
.title = Promijeni boju
pdfjs-editor-colorpicker-dropdown =
.aria-label = Izbor boja
pdfjs-editor-colorpicker-yellow =
.title = Žuta
pdfjs-editor-colorpicker-green =
.title = Zelena
pdfjs-editor-colorpicker-blue =
.title = Plava
pdfjs-editor-colorpicker-pink =
.title = Roza
pdfjs-editor-colorpicker-red =
.title = Crvena
## Show all highlights
## This is a toggle button to show/hide all the highlights.
pdfjs-editor-highlight-show-all-button-label = Prikaži sve
pdfjs-editor-highlight-show-all-button =
.title = Prikaži sve
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
# Modal header positioned above a text box where users can edit the alt text.
pdfjs-editor-new-alt-text-dialog-edit-label = Uredi alternativni tekst (opis slike)
# Modal header positioned above a text box where users can add the alt text.
pdfjs-editor-new-alt-text-dialog-add-label = Dodaj alternativni tekst (opis slike)
pdfjs-editor-new-alt-text-textarea =
.placeholder = Ovdje napišite svoj opis…
# This text refers to the alt text box above this description. It offers a definition of alt text.
pdfjs-editor-new-alt-text-description = Kratak opis za osobe koje ne mogu vidjeti sliku ili kada se slika ne učitava.
# This is a required legal disclaimer that refers to the automatically created text inside the alt text box above this text. It disappears if the text is edited by a human.
pdfjs-editor-new-alt-text-disclaimer1 = Ovaj alternativni tekst je kreiran automatski i moguće je da je netačan.
pdfjs-editor-new-alt-text-disclaimer-learn-more-url = Saznajte više
pdfjs-editor-new-alt-text-create-automatically-button-label = Automatski kreiraj alternativni tekst
pdfjs-editor-new-alt-text-not-now-button = Ne sada
pdfjs-editor-new-alt-text-error-title = Nije moguće automatski kreirati alternativni tekst
pdfjs-editor-new-alt-text-error-description = Molimo vas da napišete vlastiti alternativni tekst ili pokušate ponovo kasnije.
pdfjs-editor-new-alt-text-error-close-button = Zatvori
# Variables:
# $totalSize (Number) - the total size (in MB) of the AI model.
# $downloadedSize (Number) - the downloaded size (in MB) of the AI model.
pdfjs-editor-new-alt-text-ai-model-downloading-progress = Preuzimanje alternativnog tekstualnog AI modela ({ $downloadedSize } od { $totalSize } MB)
.aria-valuetext = Preuzimanje alternativnog tekstualnog AI modela ({ $downloadedSize } od { $totalSize } MB)
# This is a button that users can click to edit the alt text they have already added.
pdfjs-editor-new-alt-text-added-button =
.aria-label = Alternativni tekst je dodan
pdfjs-editor-new-alt-text-added-button-label = Alternativni tekst je dodan
# This is a button that users can click to open the alt text editor and add alt text when it is not present.
pdfjs-editor-new-alt-text-missing-button =
.aria-label = Nedostaje alternativni tekst
pdfjs-editor-new-alt-text-missing-button-label = Nedostaje alternativni tekst
# This is a button that opens up the alt text modal where users should review the alt text that was automatically generated.
pdfjs-editor-new-alt-text-to-review-button =
.aria-label = Alternativni tekst recenzije
pdfjs-editor-new-alt-text-to-review-button-label = Alternativni tekst recenzije
# "Created automatically" is a prefix that will be added to the beginning of any alt text that has been automatically generated. After the colon, the user will see/hear the actual alt text description. If the alt text has been edited by a human, this prefix will not appear.
# Variables:
# $generatedAltText (String) - the generated alt-text.
pdfjs-editor-new-alt-text-generated-alt-text-with-disclaimer = Automatski kreirano: { $generatedAltText }
## Image alt-text settings
pdfjs-image-alt-text-settings-button =
.title = Postavke alternativnog teksta slike
pdfjs-image-alt-text-settings-button-label = Postavke alternativnog teksta slike
pdfjs-editor-alt-text-settings-dialog-label = Postavke alternativnog teksta slike
pdfjs-editor-alt-text-settings-automatic-title = Automatski alternativni tekst
pdfjs-editor-alt-text-settings-create-model-button-label = Automatski kreiraj alternativni tekst
pdfjs-editor-alt-text-settings-create-model-description = Predlaže opise kako bi pomogao ljudima koji ne vide sliku ili kada se slika ne učitava.
# Variables:
# $totalSize (Number) - the total size (in MB) of the AI model.
pdfjs-editor-alt-text-settings-download-model-label = Alternativni tekst AI model ({ $totalSize } MB)
pdfjs-editor-alt-text-settings-ai-model-description = Radi lokalno na vašem uređaju tako da vaši podaci ostaju privatni. Potrebno za automatski alternativni tekst.
pdfjs-editor-alt-text-settings-delete-model-button = Izbriši
pdfjs-editor-alt-text-settings-download-model-button = Preuzmi
pdfjs-editor-alt-text-settings-downloading-model-button = Preuzimam…
pdfjs-editor-alt-text-settings-editor-title = Uređivač alternativnog teksta
pdfjs-editor-alt-text-settings-show-dialog-button-label = Odmah prikaži uređivač alternativnog teksta prilikom dodavanja slike
pdfjs-editor-alt-text-settings-show-dialog-description = Pomaže vam da osigurate da sve vaše slike imaju alternativni tekst.
pdfjs-editor-alt-text-settings-close-button = Zatvori
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Istaknuto je uklonjeno
pdfjs-editor-undo-bar-message-freetext = Tekst uklonjen
pdfjs-editor-undo-bar-message-ink = Crtež uklonjen
pdfjs-editor-undo-bar-message-stamp = Slika uklonjena
pdfjs-editor-undo-bar-message-signature = Potpis uklonjen
# Variables:
# $count (Number) - the number of removed annotations.
pdfjs-editor-undo-bar-message-multiple =
{ $count ->
[one] { $count } bilješka uklonjena
[few] { $count } bilješke uklonjene
*[other] { $count } bilješki uklonjeno
}
pdfjs-editor-undo-bar-undo-button =
.title = Poništi
pdfjs-editor-undo-bar-undo-button-label = Poništi
pdfjs-editor-undo-bar-close-button =
.title = Zatvori
pdfjs-editor-undo-bar-close-button-label = Zatvori
## Add a signature dialog
pdfjs-editor-add-signature-dialog-label = Ovaj modalni prozor omogućava korisniku da kreira potpis koji će dodati PDF dokumentu. Korisnik može urediti ime (koje služi i kao alternativni tekst) i opcionalno sačuvati potpis za ponovnu upotrebu.
pdfjs-editor-add-signature-dialog-title = Dodaj potpis
## Tab names
# Type is a verb (you can type your name as signature)
pdfjs-editor-add-signature-type-button = Ukucaj
.title = Ukucaj
# Draw is a verb (you can draw your signature)
pdfjs-editor-add-signature-draw-button = Napiši
.title = Napiši
pdfjs-editor-add-signature-image-button = Slika
.title = Slika
## Tab panels
pdfjs-editor-add-signature-type-input =
.aria-label = Ukucajte svoj potpis
.placeholder = Ukucajte svoj potpis
pdfjs-editor-add-signature-draw-placeholder = Napišite svoj potpis
pdfjs-editor-add-signature-draw-thickness-range-label = Debljina
# Variables:
# $thickness (Number) - the thickness (in pixels) of the line used to draw a signature.
pdfjs-editor-add-signature-draw-thickness-range =
.title = Debljina pisanja: { $thickness }
pdfjs-editor-add-signature-image-placeholder = Prevucite datoteku ovdje da biste je učitali
pdfjs-editor-add-signature-image-browse-link =
{ PLATFORM() ->
[macos] Ili odaberite slikovne datoteke
*[other] Ili pregledajte slikovne datoteke
}
## Controls
pdfjs-editor-add-signature-description-label = Opis (alternativni tekst)
pdfjs-editor-add-signature-description-input =
.title = Opis (alternativni tekst)
pdfjs-editor-add-signature-description-default-when-drawing = Potpis
pdfjs-editor-add-signature-clear-button-label = Očisti potpis
pdfjs-editor-add-signature-clear-button =
.title = Očisti potpis
pdfjs-editor-add-signature-save-checkbox = Sačuvaj potpis
pdfjs-editor-add-signature-save-warning-message = Dostigli ste ograničenje od 5 sačuvanih potpisa. Uklonite jedan da biste sačuvali više.
pdfjs-editor-add-signature-image-upload-error-title = Nije moguće učitati sliku
pdfjs-editor-add-signature-image-upload-error-description = Provjerite mrežnu vezu ili pokušajte s drugom slikom.
pdfjs-editor-add-signature-image-no-data-error-title = Nije moguće pretvoriti ovu sliku u potpis
pdfjs-editor-add-signature-image-no-data-error-description = Molimo pokušajte učitati drugu sliku.
pdfjs-editor-add-signature-error-close-button = Zatvori
## Dialog buttons
pdfjs-editor-add-signature-cancel-button = Otkaži
pdfjs-editor-add-signature-add-button = Dodaj
pdfjs-editor-edit-signature-update-button = Ažuriraj
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =
.title = Ukloni sačuvani potpis
pdfjs-editor-delete-signature-button-label1 = Ukloni sačuvani potpis
## Editor toolbar
pdfjs-editor-add-signature-edit-button-label = Uredi opis
## Edit signature description dialog
pdfjs-editor-edit-signature-dialog-title = Uredi opis

View File

@ -98,12 +98,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Propietats del document…
pdfjs-document-properties-file-name = Nom del fitxer:
pdfjs-document-properties-file-size = Mida del fitxer:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Títol:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Assumpte:
pdfjs-document-properties-keywords = Paraules clau:
pdfjs-document-properties-creation-date = Data de creació:
pdfjs-document-properties-modification-date = Data de modificació:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creador:
pdfjs-document-properties-producer = Generador de PDF:
pdfjs-document-properties-version = Versió de PDF:
@ -231,6 +243,10 @@ pdfjs-rendering-error = S'ha produït un error mentre es renderitzava la pàgina
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -256,6 +272,12 @@ pdfjs-editor-ink-button =
.title = Dibuixa
pdfjs-editor-ink-button-label = Dibuixa
## Default editor aria labels
## Remove button for the various kind of editor.
##
# Editor Parameters
@ -264,11 +286,58 @@ pdfjs-editor-free-text-size-input = Mida
pdfjs-editor-ink-color-input = Color
pdfjs-editor-ink-thickness-input = Gruix
pdfjs-editor-ink-opacity-input = Opacitat
pdfjs-free-text =
.aria-label = Editor de text
pdfjs-free-text-default-content = Escriviu…
pdfjs-ink =
.aria-label = Editor de dibuix
pdfjs-ink-canvas =
.aria-label = Imatge creada per l'usuari
## Alt-text dialog
pdfjs-editor-alt-text-cancel-button = Cancel·la
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
pdfjs-editor-add-signature-cancel-button = Cancel·la
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -96,12 +96,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Taq richinil wuj…
pdfjs-document-properties-file-name = Rub'i' yakb'äl:
pdfjs-document-properties-file-size = Runimilem yakb'äl:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = B'i'aj:
pdfjs-document-properties-author = B'anel:
pdfjs-document-properties-subject = Taqikil:
pdfjs-document-properties-keywords = Kixe'el taq tzij:
pdfjs-document-properties-creation-date = Ruq'ijul xtz'uk:
pdfjs-document-properties-modification-date = Ruq'ijul xjalwachïx:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Q'inonel:
pdfjs-document-properties-producer = PDF b'anöy:
pdfjs-document-properties-version = PDF ruwäch:
@ -229,6 +241,10 @@ pdfjs-rendering-error = Xk'ulwachitäj jun sachoj toq ninuk'wachij ri ruxaq.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -254,6 +270,12 @@ pdfjs-editor-ink-button =
.title = Tiwachib'ëx
pdfjs-editor-ink-button-label = Tiwachib'ëx
## Default editor aria labels
## Remove button for the various kind of editor.
##
# Editor Parameters
@ -262,3 +284,58 @@ pdfjs-editor-free-text-size-input = Nimilem
pdfjs-editor-ink-color-input = B'onil
pdfjs-editor-ink-thickness-input = Rupimil
pdfjs-editor-ink-opacity-input = Q'equmal
pdfjs-free-text =
.aria-label = Nuk'unel tz'ib'atzij
pdfjs-free-text-default-content = Titikitisäx rutz'ib'axik…
pdfjs-ink =
.aria-label = Nuk'unel wachib'äl
pdfjs-ink-canvas =
.aria-label = Wachib'äl nuk'un ruma okisaxel
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -80,12 +80,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = تایبەتمەندییەکانی بەڵگەنامە...
pdfjs-document-properties-file-name = ناوی پەڕگە:
pdfjs-document-properties-file-size = قەبارەی پەڕگە:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } کب ({ $size_b } بایت)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } مب ({ $size_b } بایت)
pdfjs-document-properties-title = سەردێڕ:
pdfjs-document-properties-author = نووسەر
pdfjs-document-properties-subject = بابەت:
pdfjs-document-properties-keywords = کلیلەوشە:
pdfjs-document-properties-creation-date = بەرواری درووستکردن:
pdfjs-document-properties-modification-date = بەرواری دەستکاریکردن:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = درووستکەر:
pdfjs-document-properties-producer = بەرهەمهێنەری PDF:
pdfjs-document-properties-version = وەشانی PDF:
@ -186,6 +198,9 @@ pdfjs-page-scale-actual = قەبارەی ڕاستی
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = هەڵەیەک ڕوویدا لە کاتی بارکردنی PDF.
@ -196,6 +211,10 @@ pdfjs-rendering-error = هەڵەیەک ڕوویدا لە کاتی پوختەکر
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -211,3 +230,63 @@ pdfjs-password-invalid = وشەی تێپەڕ هەڵەیە. تکایە دووبا
pdfjs-password-ok-button = باشە
pdfjs-password-cancel-button = پاشگەزبوونەوە
pdfjs-web-fonts-disabled = جۆرەپیتی وێب ناچالاکە: نەتوانی جۆرەپیتی تێخراوی ناو pdfـەکە بەکاربێت.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bajtů)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bajtů)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bajtů)
pdfjs-document-properties-title = Název stránky:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Předmět:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Datum úpravy:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Vytvořil:
pdfjs-document-properties-producer = Tvůrce PDF:
pdfjs-document-properties-version = Verze PDF:
@ -243,7 +255,7 @@ pdfjs-find-not-found = Hledaný text nenalezen
## Predefined zoom values
pdfjs-page-scale-width = Podle šířky
pdfjs-page-scale-fit = Podle stránky
pdfjs-page-scale-fit = Podle výšky
pdfjs-page-scale-auto = Automatická velikost
pdfjs-page-scale-actual = Skutečná velikost
# Variables:
@ -267,6 +279,10 @@ pdfjs-rendering-error = Při vykreslování stránky nastala chyba.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -290,13 +306,9 @@ pdfjs-web-fonts-disabled = Webová písma jsou zakázána, proto není možné p
pdfjs-editor-free-text-button =
.title = Text
pdfjs-editor-color-picker-free-text-input =
.title = Změna barvy textu
pdfjs-editor-free-text-button-label = Text
pdfjs-editor-ink-button =
.title = Kreslení
pdfjs-editor-color-picker-ink-input =
.title = Změna barvy kresby
pdfjs-editor-ink-button-label = Kreslení
pdfjs-editor-stamp-button =
.title = Přidání či úprava obrázků
@ -308,14 +320,6 @@ pdfjs-highlight-floating-button1 =
.title = Zvýraznit
.aria-label = Zvýraznit
pdfjs-highlight-floating-button-label = Zvýraznit
pdfjs-comment-floating-button =
.title = Komentář
.aria-label = Komentář
pdfjs-comment-floating-button-label = Komentář
pdfjs-editor-comment-button =
.title = Komentář
.aria-label = Komentář
pdfjs-editor-comment-button-label = Komentář
pdfjs-editor-signature-button =
.title = Přidat podpis
pdfjs-editor-signature-button-label = Přidat podpis
@ -378,29 +382,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Textový editor
.default-content = Začněte psát...
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Komentář
[few] Komentáře
[many] Komentáře
*[other] Komentáře
}
pdfjs-editor-comments-sidebar-close-button =
.title = Zavřít postranní lištu
.aria-label = Zavřít postranní lištu
pdfjs-editor-comments-sidebar-close-button-label = Zavřít postranní lištu
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Vidíte něco pozoruhodného? Zvýrazněte to a zanechte komentář.
pdfjs-editor-comments-sidebar-no-comments-link = Zjistit více
pdfjs-free-text =
.aria-label = Textový editor
pdfjs-free-text-default-content = Začněte psát…
pdfjs-ink =
.aria-label = Editor kreslení
pdfjs-ink-canvas =
.aria-label = Uživatelem vytvořený obrázek
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Náhradní popis
pdfjs-editor-alt-text-edit-button =
.aria-label = Upravit alternativní text
pdfjs-editor-alt-text-edit-button-label = Upravit náhradní popis
pdfjs-editor-alt-text-dialog-label = Vyberte možnost
pdfjs-editor-alt-text-dialog-description = Náhradní popis pomáhá, když lidé obrázek nevidí nebo když se nenačítá.
pdfjs-editor-alt-text-add-description-label = Přidat popis
@ -420,6 +415,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Levý horní roh — změna velikosti
pdfjs-editor-resizer-label-top-middle = Horní střed — změna velikosti
pdfjs-editor-resizer-label-top-right = Pravý horní roh — změna velikosti
pdfjs-editor-resizer-label-middle-right = Vpravo uprostřed — změna velikosti
pdfjs-editor-resizer-label-bottom-right = Pravý dolní roh — změna velikosti
pdfjs-editor-resizer-label-bottom-middle = Střed dole — změna velikosti
pdfjs-editor-resizer-label-bottom-left = Levý dolní roh — změna velikosti
pdfjs-editor-resizer-label-middle-left = Vlevo uprostřed — změna velikosti
pdfjs-editor-resizer-top-left =
.aria-label = Levý horní roh — změna velikosti
pdfjs-editor-resizer-top-middle =
@ -525,14 +528,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Při přidávání obr
pdfjs-editor-alt-text-settings-show-dialog-description = Pomůže vám zajistit, aby všechny vaše obrázky obsahovaly alternativní text.
pdfjs-editor-alt-text-settings-close-button = Zavřít
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Přidáno zvýraznění
pdfjs-editor-freetext-added-alert = Text přidán
pdfjs-editor-ink-added-alert = Kresba byla přidána
pdfjs-editor-stamp-added-alert = Obrázek byl přidán
pdfjs-editor-signature-added-alert = Byl přidán podpis
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Zvýraznění odebráno
@ -564,8 +559,8 @@ pdfjs-editor-add-signature-dialog-title = Přidat podpis
## Tab names
# Type is a verb (you can type your name as signature)
pdfjs-editor-add-signature-type-button = Psát
.title = Psát
pdfjs-editor-add-signature-type-button = Typ
.title = Typ
# Draw is a verb (you can draw your signature)
pdfjs-editor-add-signature-draw-button = Kreslit
.title = Kreslit
@ -583,11 +578,11 @@ pdfjs-editor-add-signature-draw-thickness-range-label = Tloušťka
# $thickness (Number) - the thickness (in pixels) of the line used to draw a signature.
pdfjs-editor-add-signature-draw-thickness-range =
.title = Tloušťka kresby: { $thickness }
pdfjs-editor-add-signature-image-placeholder = Přetáhněte sem soubor, který chcete nahrát
pdfjs-editor-add-signature-image-placeholder = Pro nahrání přetáhněte soubor sem
pdfjs-editor-add-signature-image-browse-link =
{ PLATFORM() ->
[macos] Nebo vyberte soubory obrazu
*[other] Nebo vyberte soubory obrazu
[macos] Nebo vyberte soubory s obrázky
*[other] Nebo vyberte soubory s obrázky
}
## Controls
@ -600,11 +595,9 @@ pdfjs-editor-add-signature-clear-button-label = Vymazání podpisu
pdfjs-editor-add-signature-clear-button =
.title = Vymazání podpisu
pdfjs-editor-add-signature-save-checkbox = Uložit podpis
pdfjs-editor-add-signature-save-warning-message = Dosáhli jste limitu 5 uložených podpisů. Chcete-li uložit další, jeden odstraňte.
pdfjs-editor-add-signature-save-warning-message = Dosáhli jste limitu 5 uložených podpisů. Odstraňte jeden a uložte další.
pdfjs-editor-add-signature-image-upload-error-title = Obrázek se nepodařilo nahrát
pdfjs-editor-add-signature-image-upload-error-description = Zkontrolujte připojení k síti nebo zkuste jiný obrázek.
pdfjs-editor-add-signature-image-no-data-error-title = Nelze převést tento obrázek na podpis
pdfjs-editor-add-signature-image-no-data-error-description = Zkuste nahrát jiný obrázek.
pdfjs-editor-add-signature-error-close-button = Zavřít
## Dialog buttons
@ -613,34 +606,6 @@ pdfjs-editor-add-signature-cancel-button = Zrušit
pdfjs-editor-add-signature-add-button = Přidat
pdfjs-editor-edit-signature-update-button = Aktualizovat
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Upravit komentář
pdfjs-editor-edit-comment-popup-button =
.title = Upravit komentář
pdfjs-editor-delete-comment-popup-button-label = Odebrat komentář
pdfjs-editor-delete-comment-popup-button =
.title = Odebrat komentář
pdfjs-show-comment-button =
.title = Zobrazit komentář
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Upravit komentář
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Aktualizovat
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Přidání komentáře
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Přidat
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Začněte psát…
pdfjs-editor-edit-comment-dialog-cancel-button = Zrušit
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Přidání komentáře
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } beit)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } beit)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } beit)
pdfjs-document-properties-title = Teitl:
pdfjs-document-properties-author = Awdur:
pdfjs-document-properties-subject = Pwnc:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Dyddiad Addasu:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Crewr:
pdfjs-document-properties-producer = Cynhyrchydd PDF:
pdfjs-document-properties-version = Fersiwn PDF:
@ -271,6 +283,10 @@ pdfjs-rendering-error = Digwyddodd gwall wrth adeiladu'r dudalen.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -294,13 +310,9 @@ pdfjs-web-fonts-disabled = Ffontiau gwe wedi eu hanalluogi: methu defnyddio ffon
pdfjs-editor-free-text-button =
.title = Testun
pdfjs-editor-color-picker-free-text-input =
.title = Newid lliw testun
pdfjs-editor-free-text-button-label = Testun
pdfjs-editor-ink-button =
.title = Lluniadu
pdfjs-editor-color-picker-ink-input =
.title = Newid lliw lluniadu
pdfjs-editor-ink-button-label = Lluniadu
pdfjs-editor-stamp-button =
.title = Ychwanegu neu olygu delweddau
@ -312,14 +324,6 @@ pdfjs-highlight-floating-button1 =
.title = Amlygu
.aria-label = Amlygu
pdfjs-highlight-floating-button-label = Amlygu
pdfjs-comment-floating-button =
.title = Sylw
.aria-label = Sylw
pdfjs-comment-floating-button-label = Sylw
pdfjs-editor-comment-button =
.title = Sylw
.aria-label = Sylw
pdfjs-editor-comment-button-label = Sylw
pdfjs-editor-signature-button =
.title = Ychwanegu llofnod
pdfjs-editor-signature-button-label = Ychwanegu llofnod
@ -382,31 +386,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Golygydd Testun
.default-content = Cychwyn teipio…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[zero] Sylwadau
[one] Sylw
[two] Sylw
[few] Sylw
[many] Sylw
*[other] Sylw
}
pdfjs-editor-comments-sidebar-close-button =
.title = Cau'r bar ochr
.aria-label = Cau'r bar ochr
pdfjs-editor-comments-sidebar-close-button-label = Cau'r bar ochr
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Gweld rhywbeth nodedig? Amlygwch ef a gadael sylw.
pdfjs-editor-comments-sidebar-no-comments-link = Dysgu rhagor
pdfjs-free-text =
.aria-label = Golygydd Testun
pdfjs-free-text-default-content = Cychwyn teipio…
pdfjs-ink =
.aria-label = Golygydd Lluniadu
pdfjs-ink-canvas =
.aria-label = Delwedd wedi'i chreu gan ddefnyddwyr
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Testun amgen (alt)
pdfjs-editor-alt-text-edit-button =
.aria-label = Golygu testun amgen
pdfjs-editor-alt-text-edit-button-label = Golygu testun amgen
pdfjs-editor-alt-text-dialog-label = Dewisiadau
pdfjs-editor-alt-text-dialog-description = Mae testun amgen (testun alt) yn helpu pan na all pobl weld y ddelwedd neu pan nad yw'n llwytho.
pdfjs-editor-alt-text-add-description-label = Ychwanegu disgrifiad
@ -426,6 +419,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Y gornel chwith uchaf — newid maint
pdfjs-editor-resizer-label-top-middle = Canol uchaf - newid maint
pdfjs-editor-resizer-label-top-right = Y gornel dde uchaf - newid maint
pdfjs-editor-resizer-label-middle-right = De canol - newid maint
pdfjs-editor-resizer-label-bottom-right = Y gornel dde isaf — newid maint
pdfjs-editor-resizer-label-bottom-middle = Canol gwaelod — newid maint
pdfjs-editor-resizer-label-bottom-left = Y gornel chwith isaf — newid maint
pdfjs-editor-resizer-label-middle-left = Chwith canol — newid maint
pdfjs-editor-resizer-top-left =
.aria-label = Y gornel chwith uchaf — newid maint
pdfjs-editor-resizer-top-middle =
@ -531,14 +532,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Dangoswch y golygydd t
pdfjs-editor-alt-text-settings-show-dialog-description = Yn eich helpu i wneud yn siŵr bod gan eich holl ddelweddau destun amgen.
pdfjs-editor-alt-text-settings-close-button = Cau
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Amlygu wedi'i ychwanegu
pdfjs-editor-freetext-added-alert = Testun wedi'i ychwanegu
pdfjs-editor-ink-added-alert = Lluniadu wedi'i ychwanegu
pdfjs-editor-stamp-added-alert = Delwedd wedi'i hychwanegu
pdfjs-editor-signature-added-alert = Llofnod wedi'i ychwanegu
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Tynnwyd yr amlygu
@ -611,8 +604,6 @@ pdfjs-editor-add-signature-save-checkbox = Cadw llofnod
pdfjs-editor-add-signature-save-warning-message = Rydych chi wedi cyrraedd y terfyn o 5 llofnod sydd wedi'u cadw. Tynnwch un i gadw rhagor
pdfjs-editor-add-signature-image-upload-error-title = Methu llwytho'r ddelwedd.
pdfjs-editor-add-signature-image-upload-error-description = Gwiriwch eich cysylltiad rhwydwaith neu rhowch gynnig ar ddelwedd arall.
pdfjs-editor-add-signature-image-no-data-error-title = Methu trosi'r ddelwedd hon yn llofnod
pdfjs-editor-add-signature-image-no-data-error-description = Ceisiwch lwytho delwedd wahanol.
pdfjs-editor-add-signature-error-close-button = Cau
## Dialog buttons
@ -621,34 +612,6 @@ pdfjs-editor-add-signature-cancel-button = Diddymu
pdfjs-editor-add-signature-add-button = Ychwanegu
pdfjs-editor-edit-signature-update-button = Diweddaru
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Golygu sylw
pdfjs-editor-edit-comment-popup-button =
.title = Golygu sylw
pdfjs-editor-delete-comment-popup-button-label = Tynnu sylw
pdfjs-editor-delete-comment-popup-button =
.title = Tynnu sylw
pdfjs-show-comment-button =
.title = Dangos sylw
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Golygu sylw
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Diweddaru
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Ychwanegu sylw
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Ychwanegu
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Cychwyn teipio…
pdfjs-editor-edit-comment-dialog-cancel-button = Diddymu
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Ychwanegu sylw
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Titel:
pdfjs-document-properties-author = Forfatter:
pdfjs-document-properties-subject = Emne:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Redigeret:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Program:
pdfjs-document-properties-producer = PDF-producent:
pdfjs-document-properties-version = PDF-version:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Der opstod en fejl ved generering af siden.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Webskrifttyper er deaktiverede. De indlejrede skriftt
pdfjs-editor-free-text-button =
.title = Tekst
pdfjs-editor-color-picker-free-text-input =
.title = Skift tekstfarve
pdfjs-editor-free-text-button-label = Tekst
pdfjs-editor-ink-button =
.title = Tegn
pdfjs-editor-color-picker-ink-input =
.title = Skift tegne-farve
pdfjs-editor-ink-button-label = Tegn
pdfjs-editor-stamp-button =
.title = Tilføj eller rediger billeder
@ -304,17 +316,9 @@ pdfjs-highlight-floating-button1 =
.title = Fremhæv
.aria-label = Fremhæv
pdfjs-highlight-floating-button-label = Fremhæv
pdfjs-comment-floating-button =
.title = Kommenter
.aria-label = Kommenter
pdfjs-comment-floating-button-label = Kommenter
pdfjs-editor-comment-button =
.title = Kommentar
.aria-label = Kommentar
pdfjs-editor-comment-button-label = Kommentar
pdfjs-editor-signature-button =
.title = Tilføj signatur
pdfjs-editor-signature-button-label = Tilføj signatur
.title = Tilføj underskrift
pdfjs-editor-signature-button-label = Tilføj underskrift
## Default editor aria labels
@ -343,7 +347,7 @@ pdfjs-editor-remove-stamp-button =
pdfjs-editor-remove-highlight-button =
.title = Fjern fremhævning
pdfjs-editor-remove-signature-button =
.title = Fjern signatur
.title = Fjern underskrift
##
@ -361,40 +365,33 @@ pdfjs-editor-free-highlight-thickness-input = Tykkelse
pdfjs-editor-free-highlight-thickness-title =
.title = Ændr tykkelse, når andre elementer end tekst fremhæves
pdfjs-editor-add-signature-container =
.aria-label = Indstillinger for signaturer og gemte signaturer
.aria-label = Indstillinger for underskrifter og gemte underskrifter
pdfjs-editor-signature-add-signature-button =
.title = Tilføj ny signatur
pdfjs-editor-signature-add-signature-button-label = Tilføj ny signatur
.title = Tilføj ny underskrift
pdfjs-editor-signature-add-signature-button-label = Tilføj ny underskrift
# Used on the button to use an already saved signature.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-add-saved-signature-button =
.title = Gemt signatur: { $description }
.title = Gemt underskrift: { $description }
# .default-content is used as a placeholder in an empty text editor.
pdfjs-free-text2 =
.aria-label = Teksteditor
.default-content = Begynd at skrive…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Kommentar
*[other] Kommentarer
}
pdfjs-editor-comments-sidebar-close-button =
.title = Luk sidepanelet
.aria-label = Luk sidepanelet
pdfjs-editor-comments-sidebar-close-button-label = Luk sidepanelet
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Har du fundet noget interessant? Fremhæv det og gem en kommentar.
pdfjs-editor-comments-sidebar-no-comments-link = Læs mere
pdfjs-free-text =
.aria-label = Teksteditor
pdfjs-free-text-default-content = Begynd at skrive…
pdfjs-ink =
.aria-label = Tegnings-editor
pdfjs-ink-canvas =
.aria-label = Brugeroprettet billede
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alternativ tekst
pdfjs-editor-alt-text-edit-button =
.aria-label = Rediger alternativ tekst
pdfjs-editor-alt-text-edit-button-label = Rediger alternativ tekst
pdfjs-editor-alt-text-dialog-label = Vælg en indstilling
pdfjs-editor-alt-text-dialog-description = Alternativ tekst hjælper folk, som ikke kan se billedet eller når det ikke indlæses.
pdfjs-editor-alt-text-add-description-label = Tilføj en beskrivelse
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Øverste venstre hjørne — tilpas størrelse
pdfjs-editor-resizer-label-top-middle = Øverste i midten — tilpas størrelse
pdfjs-editor-resizer-label-top-right = Øverste højre hjørne — tilpas størrelse
pdfjs-editor-resizer-label-middle-right = Midten til højre — tilpas størrelse
pdfjs-editor-resizer-label-bottom-right = Nederste højre hjørne - tilpas størrelse
pdfjs-editor-resizer-label-bottom-middle = Nederst i midten - tilpas størrelse
pdfjs-editor-resizer-label-bottom-left = Nederste venstre hjørne - tilpas størrelse
pdfjs-editor-resizer-label-middle-left = Midten til venstre — tilpas størrelse
pdfjs-editor-resizer-top-left =
.aria-label = Øverste venstre hjørne — tilpas størrelse
pdfjs-editor-resizer-top-middle =
@ -519,21 +524,13 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Vis redigering af alte
pdfjs-editor-alt-text-settings-show-dialog-description = Hjælper dig med at sikre, at alle dine billeder har alternativ tekst.
pdfjs-editor-alt-text-settings-close-button = Luk
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Fremhævning tilføjet
pdfjs-editor-freetext-added-alert = Tekst tilføjet
pdfjs-editor-ink-added-alert = Tegning tilføjet
pdfjs-editor-stamp-added-alert = Billede tilføjet
pdfjs-editor-signature-added-alert = Signatur tilføjet
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Fremhævning fjernet
pdfjs-editor-undo-bar-message-freetext = Tekst fjernet
pdfjs-editor-undo-bar-message-ink = Tegning fjernet
pdfjs-editor-undo-bar-message-stamp = Billede fjernet
pdfjs-editor-undo-bar-message-signature = Signatur fjernet
pdfjs-editor-undo-bar-message-signature = Underskrift fjernet
# Variables:
# $count (Number) - the number of removed annotations.
pdfjs-editor-undo-bar-message-multiple =
@ -550,8 +547,8 @@ pdfjs-editor-undo-bar-close-button-label = Luk
## Add a signature dialog
pdfjs-editor-add-signature-dialog-label = Modal-vinduet gør det muligt for brugeren at oprette en signatur, som kan føjes til PDF-dokumenter. Brugeren kan redigere navnet (der også fungerer som alternativ tekst) og eventuelt gemme signaturen, så den kan bruges igen.
pdfjs-editor-add-signature-dialog-title = Tilføj en signatur
pdfjs-editor-add-signature-dialog-label = Modal-vinduet gør det muligt for brugeren at oprette en underskrift, som kan føjes til PDF-dokumenter. Brugeren kan redigere navnet (der også fungerer som alternativ tekst) og eventuelt gemme signaturen, så den kan bruges igen.
pdfjs-editor-add-signature-dialog-title = Tilføj en underskrift
## Tab names
@ -567,9 +564,9 @@ pdfjs-editor-add-signature-image-button = Billede
## Tab panels
pdfjs-editor-add-signature-type-input =
.aria-label = Indtast din signatur
.placeholder = Indtast din signatur
pdfjs-editor-add-signature-draw-placeholder = Tegn din signatur
.aria-label = Indtast din underskrift
.placeholder = Indtast din underskrift
pdfjs-editor-add-signature-draw-placeholder = Tegn din underskrift
pdfjs-editor-add-signature-draw-thickness-range-label = Tykkelse
# Variables:
# $thickness (Number) - the thickness (in pixels) of the line used to draw a signature.
@ -588,15 +585,13 @@ pdfjs-editor-add-signature-description-label = Beskrivelse (alternativ tekst)
pdfjs-editor-add-signature-description-input =
.title = Beskrivelse (alternativ tekst)
pdfjs-editor-add-signature-description-default-when-drawing = Underskrift
pdfjs-editor-add-signature-clear-button-label = Ryd signatur
pdfjs-editor-add-signature-clear-button-label = Ryd underskrift
pdfjs-editor-add-signature-clear-button =
.title = Ryd signatur
pdfjs-editor-add-signature-save-checkbox = Gem signatur
pdfjs-editor-add-signature-save-warning-message = Du har nået grænsen på 5 gemte signaturer. Fjern en for at tilføje en ny.
.title = Ryd underskrift
pdfjs-editor-add-signature-save-checkbox = Gem underskrift
pdfjs-editor-add-signature-save-warning-message = Du har nået grænsen på 5 gemte underskrifter. Fjern en for at tilføje en ny.
pdfjs-editor-add-signature-image-upload-error-title = Kunne ikke uploade billede
pdfjs-editor-add-signature-image-upload-error-description = Kontroller din netværksforbindelse eller prøv med et andet billede.
pdfjs-editor-add-signature-image-no-data-error-title = Kan ikke konvertere dette billede til en signatur
pdfjs-editor-add-signature-image-no-data-error-description = Prøv at uploade et andet billede.
pdfjs-editor-add-signature-error-close-button = Luk
## Dialog buttons
@ -605,39 +600,11 @@ pdfjs-editor-add-signature-cancel-button = Annuller
pdfjs-editor-add-signature-add-button = Tilføj
pdfjs-editor-edit-signature-update-button = Opdater
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Rediger kommentar
pdfjs-editor-edit-comment-popup-button =
.title = Rediger kommentar
pdfjs-editor-delete-comment-popup-button-label = Fjern kommentar
pdfjs-editor-delete-comment-popup-button =
.title = Fjern kommentar
pdfjs-show-comment-button =
.title = Vis kommentar
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Rediger kommentar
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Opdater
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Tilføj kommentar
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Tilføj
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Begynd at skrive…
pdfjs-editor-edit-comment-dialog-cancel-button = Annuller
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Tilføj kommentar
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =
.title = Fjern gemt signatur
pdfjs-editor-delete-signature-button-label1 = Fjern gemt signatur
.title = Fjern gemt underskrift
pdfjs-editor-delete-signature-button-label1 = Fjern gemt underskrift
## Editor toolbar

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } Bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } Bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } Bytes)
pdfjs-document-properties-title = Titel:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Thema:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Bearbeitungsdatum:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date } { $time }
pdfjs-document-properties-creator = Anwendung:
pdfjs-document-properties-producer = PDF erstellt mit:
pdfjs-document-properties-version = PDF-Version:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Beim Darstellen der Seite trat ein Fehler auf.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Web-Schriftarten sind deaktiviert: Eingebettete PDF-S
pdfjs-editor-free-text-button =
.title = Text
pdfjs-editor-color-picker-free-text-input =
.title = Textfarbe ändern
pdfjs-editor-free-text-button-label = Text
pdfjs-editor-ink-button =
.title = Zeichnen
pdfjs-editor-color-picker-ink-input =
.title = Zeichnungsfarbe ändern
pdfjs-editor-ink-button-label = Zeichnen
pdfjs-editor-stamp-button =
.title = Grafiken hinzufügen oder bearbeiten
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Hervorheben
.aria-label = Hervorheben
pdfjs-highlight-floating-button-label = Hervorheben
pdfjs-comment-floating-button =
.title = Kommentieren
.aria-label = Kommentieren
pdfjs-comment-floating-button-label = Kommentieren
pdfjs-editor-comment-button =
.title = Kommentar
.aria-label = Kommentar
pdfjs-editor-comment-button-label = Kommentar
pdfjs-editor-signature-button =
.title = Unterschrift hinzufügen
pdfjs-editor-signature-button-label = Unterschrift hinzufügen
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Texteditor
.default-content = Schreiben beginnen…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Kommentar
*[other] Kommentare
}
pdfjs-editor-comments-sidebar-close-button =
.title = Sidebar schließen
.aria-label = Sidebar schließen
pdfjs-editor-comments-sidebar-close-button-label = Sidebar schließen
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Haben Sie etwas Bemerkenswertes entdeckt? Heben Sie es hervor und hinterlassen Sie einen Kommentar.
pdfjs-editor-comments-sidebar-no-comments-link = Weitere Informationen
pdfjs-free-text =
.aria-label = Texteditor
pdfjs-free-text-default-content = Schreiben beginnen…
pdfjs-ink =
.aria-label = Zeichnungseditor
pdfjs-ink-canvas =
.aria-label = Vom Benutzer erstelltes Bild
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alternativ-Text
pdfjs-editor-alt-text-edit-button =
.aria-label = Alternativ-Text bearbeiten
pdfjs-editor-alt-text-edit-button-label = Alternativ-Text bearbeiten
pdfjs-editor-alt-text-dialog-label = Option wählen
pdfjs-editor-alt-text-dialog-description = Alt-Text (Alternativtext) hilft, wenn Personen die Grafik nicht sehen können oder wenn sie nicht geladen wird.
pdfjs-editor-alt-text-add-description-label = Beschreibung hinzufügen
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Linke obere Ecke - Größe ändern
pdfjs-editor-resizer-label-top-middle = Oben mittig - Größe ändern
pdfjs-editor-resizer-label-top-right = Rechts oben - Größe ändern
pdfjs-editor-resizer-label-middle-right = Mitte rechts - Größe ändern
pdfjs-editor-resizer-label-bottom-right = Rechte untere Ecke - Größe ändern
pdfjs-editor-resizer-label-bottom-middle = Unten mittig - Größe ändern
pdfjs-editor-resizer-label-bottom-left = Linke untere Ecke - Größe ändern
pdfjs-editor-resizer-label-middle-left = Mitte links - Größe ändern
pdfjs-editor-resizer-top-left =
.aria-label = Linke obere Ecke - Größe ändern
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Alternativ-Texteditor
pdfjs-editor-alt-text-settings-show-dialog-description = Hilft Ihnen, sicherzustellen, dass alle Ihre Grafiken Alternativ-Text haben.
pdfjs-editor-alt-text-settings-close-button = Schließen
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Hervorhebung hinzugefügt
pdfjs-editor-freetext-added-alert = Text hinzugefügt
pdfjs-editor-ink-added-alert = Zeichnung hinzugefügt
pdfjs-editor-stamp-added-alert = Bild hinzugefügt
pdfjs-editor-signature-added-alert = Signatur hinzugefügt
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Hervorhebung entfernt
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Unterschrift speichern
pdfjs-editor-add-signature-save-warning-message = Sie haben die Grenze von 5 gespeicherten Unterschriften erreicht. Entfernen Sie eine, um weitere zu speichern.
pdfjs-editor-add-signature-image-upload-error-title = Grafik konnte nicht hochgeladen werden
pdfjs-editor-add-signature-image-upload-error-description = Überprüfen Sie Ihre Netzwerkverbindung, oder versuchen Sie es mit einer anderen Grafik.
pdfjs-editor-add-signature-image-no-data-error-title = Kann Grafik nicht in eine Signatur umwandeln
pdfjs-editor-add-signature-image-no-data-error-description = Bitte versuchen Sie, eine andere Grafik hochzuladen.
pdfjs-editor-add-signature-error-close-button = Schließen
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Abbrechen
pdfjs-editor-add-signature-add-button = Hinzufügen
pdfjs-editor-edit-signature-update-button = Aktualisieren
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Kommentar bearbeiten
pdfjs-editor-edit-comment-popup-button =
.title = Kommentar bearbeiten
pdfjs-editor-delete-comment-popup-button-label = Kommentar entfernen
pdfjs-editor-delete-comment-popup-button =
.title = Kommentar entfernen
pdfjs-show-comment-button =
.title = Kommentar anzeigen
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Kommentar bearbeiten
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Aktualisieren
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Kommentar hinzufügen
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Hinzufügen
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Schreiben beginnen…
pdfjs-editor-edit-comment-dialog-cancel-button = Abbrechen
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Kommentar hinzufügen
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bajtow)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bajtow)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bajtow)
pdfjs-document-properties-title = Titel:
pdfjs-document-properties-author = Awtor:
pdfjs-document-properties-subject = Tema:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Datum změny:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Awtor:
pdfjs-document-properties-producer = PDF-gótowaŕ:
pdfjs-document-properties-version = PDF-wersija:
@ -167,10 +179,10 @@ pdfjs-printing-not-ready = Warnowanje: PDF njejo se za śišćanje dopołnje zac
## Tooltips and alt text for side panel toolbar buttons
pdfjs-toggle-sidebar-button =
.title = Bocnicu pokazaś/schowaś
.title = Bócnicu pokazaś/schowaś
pdfjs-toggle-sidebar-notification-button =
.title = Bocnicu pśešaltowaś (dokument rozrědowanje/pśipiski/warstwy wopśimujo)
pdfjs-toggle-sidebar-button-label = Bocnicu pokazaś/schowaś
pdfjs-toggle-sidebar-button-label = Bócnicu pokazaś/schowaś
pdfjs-document-outline-button =
.title = Dokumentowe naraźenje pokazaś (dwójne kliknjenje, aby se wšykne zapiski pokazali/schowali)
pdfjs-document-outline-button-label = Dokumentowa struktura
@ -267,6 +279,10 @@ pdfjs-rendering-error = Pśi zwobraznjanju boka jo zmólka nastała.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -290,13 +306,9 @@ pdfjs-web-fonts-disabled = Webpisma su znjemóžnjone: njejo móžno, zasajźone
pdfjs-editor-free-text-button =
.title = Tekst
pdfjs-editor-color-picker-free-text-input =
.title = Tekstowu barwu změniś
pdfjs-editor-free-text-button-label = Tekst
pdfjs-editor-ink-button =
.title = Kresliś
pdfjs-editor-color-picker-ink-input =
.title = Kresleńsku barwu změniś
pdfjs-editor-ink-button-label = Kresliś
pdfjs-editor-stamp-button =
.title = Wobraze pśidaś abo wobźěłaś
@ -308,14 +320,6 @@ pdfjs-highlight-floating-button1 =
.title = Wuzwignuś
.aria-label = Wuzwignuś
pdfjs-highlight-floating-button-label = Wuzwignuś
pdfjs-comment-floating-button =
.title = Komentěrowaś
.aria-label = Komentěrowaś
pdfjs-comment-floating-button-label = Komentěrowaś
pdfjs-editor-comment-button =
.title = Komentěrowaś
.aria-label = Komentěrowaś
pdfjs-editor-comment-button-label = Komentar
pdfjs-editor-signature-button =
.title = Signaturu pśidaś
pdfjs-editor-signature-button-label = Signaturu pśidaś
@ -378,29 +382,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Tekstowy editor
.default-content = Zachopśo pisaś …
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] { $count } komentar
[two] { $count } komentara
[few] { $count } komentary
*[other] { $count } komentarow
}
pdfjs-editor-comments-sidebar-close-button =
.title = Bocnicu zacyniś
.aria-label = Bocnicu zacyniś
pdfjs-editor-comments-sidebar-close-button-label = Bocnicu zacyniś
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Wiźiśo něco wobspomnjeśa gódnego? Wuzwigniśo to a zawóstajśo komentar.
pdfjs-editor-comments-sidebar-no-comments-link = Dalšne informacije
pdfjs-free-text =
.aria-label = Tekstowy editor
pdfjs-free-text-default-content = Zachopśo pisaś…
pdfjs-ink =
.aria-label = Kresleński editor
pdfjs-ink-canvas =
.aria-label = Wobraz napórany wót wužywarja
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alternatiwny tekst
pdfjs-editor-alt-text-edit-button =
.aria-label = Alternatiwny tekst wobźěłaś
pdfjs-editor-alt-text-edit-button-label = Alternatiwny tekst wobźěłaś
pdfjs-editor-alt-text-dialog-label = Nastajenje wubraś
pdfjs-editor-alt-text-dialog-description = Alternatiwny tekst pomaga, gaž luźe njamógu wobraz wiźeś abo gaž se wobraz njezacytajo.
pdfjs-editor-alt-text-add-description-label = Wopisanje pśidaś
@ -420,6 +415,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Górjejce nalěwo wjelikosć změniś
pdfjs-editor-resizer-label-top-middle = Górjejce wesrjejź wjelikosć změniś
pdfjs-editor-resizer-label-top-right = Górjejce napšawo wjelikosć změniś
pdfjs-editor-resizer-label-middle-right = Wesrjejź napšawo wjelikosć změniś
pdfjs-editor-resizer-label-bottom-right = Dołojce napšawo wjelikosć změniś
pdfjs-editor-resizer-label-bottom-middle = Dołojce wesrjejź wjelikosć změniś
pdfjs-editor-resizer-label-bottom-left = Dołojce nalěwo wjelikosć změniś
pdfjs-editor-resizer-label-middle-left = Wesrjejź nalěwo wjelikosć změniś
pdfjs-editor-resizer-top-left =
.aria-label = Górjejce nalěwo wjelikosć změniś
pdfjs-editor-resizer-top-middle =
@ -525,14 +528,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Editor alternatiwnego
pdfjs-editor-alt-text-settings-show-dialog-description = Pomaga, wam wšym swójim wobrazam alternatiwny tekst pśidaś.
pdfjs-editor-alt-text-settings-close-button = Zacyniś
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Wuzwignjenje pśidane
pdfjs-editor-freetext-added-alert = Tekst pśidany
pdfjs-editor-ink-added-alert = Kreslanka pśidana
pdfjs-editor-stamp-added-alert = Wobraz pśidany
pdfjs-editor-signature-added-alert = Signatura pśidana
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Wótwónoźone wuzwignuś
@ -603,8 +598,6 @@ pdfjs-editor-add-signature-save-checkbox = Signaturu składowaś
pdfjs-editor-add-signature-save-warning-message = Sćo dojśpił limit 5 skłaźonych signaturow. Wótwónoźćo jadnu, aby wěcej składował.
pdfjs-editor-add-signature-image-upload-error-title = Wobraz njedajo se nagraś
pdfjs-editor-add-signature-image-upload-error-description = Pśeglědajśo swój seśowy zwisk abo wopytajśo drugi wobraz.
pdfjs-editor-add-signature-image-no-data-error-title = Toś ten wobraz njedajo se do signatury pśetwóriś
pdfjs-editor-add-signature-image-no-data-error-description = Wopytajśo pšosym drugi wobraz nagraś.
pdfjs-editor-add-signature-error-close-button = Zacyniś
## Dialog buttons
@ -613,34 +606,6 @@ pdfjs-editor-add-signature-cancel-button = Pśetergnuś
pdfjs-editor-add-signature-add-button = Pśidaś
pdfjs-editor-edit-signature-update-button = Aktualizěrowaś
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Komentar wobźěłaś
pdfjs-editor-edit-comment-popup-button =
.title = Komentar wobźěłaś
pdfjs-editor-delete-comment-popup-button-label = Komentar wótwónoźeś
pdfjs-editor-delete-comment-popup-button =
.title = Komentar wótwónoźeś
pdfjs-show-comment-button =
.title = Komentar pokazaś
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Komentar wobźěłaś
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Aktualizěrowaś
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Komentar pśidaś
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Pśidaś
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Zachopśo pisaś…
pdfjs-editor-edit-comment-dialog-cancel-button = Pśetergnuś
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Komentar pśidaś
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -88,7 +88,7 @@ pdfjs-scroll-wrapped-button =
.title = Χρήση κυκλικής κύλισης
pdfjs-scroll-wrapped-button-label = Κυκλική κύλιση
pdfjs-spread-none-button =
.title = Να μην γίνει σύνδεση των επεκτάσεων σελίδων
.title = Να μη γίνει σύνδεση επεκτάσεων σελίδων
pdfjs-spread-none-button-label = Χωρίς επεκτάσεις
pdfjs-spread-odd-button =
.title = Σύνδεση επεκτάσεων σελίδων ξεκινώντας από τις μονές σελίδες
@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Τίτλος:
pdfjs-document-properties-author = Συγγραφέας:
pdfjs-document-properties-subject = Θέμα:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Ημερομηνία τροποπ
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Δημιουργός:
pdfjs-document-properties-producer = Παραγωγός PDF:
pdfjs-document-properties-version = Έκδοση PDF:
@ -258,11 +270,15 @@ pdfjs-page-landmark =
pdfjs-loading-error = Προέκυψε σφάλμα κατά τη φόρτωση του PDF.
pdfjs-invalid-file-error = Μη έγκυρο ή κατεστραμμένο αρχείο PDF.
pdfjs-missing-file-error = Λείπει αρχείο PDF.
pdfjs-unexpected-response-error = Απρόσμενη απάντηση διακομιστή.
pdfjs-unexpected-response-error = Μη αναμενόμενη απόκριση από το διακομιστή.
pdfjs-rendering-error = Προέκυψε σφάλμα κατά την εμφάνιση της σελίδας.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Οι γραμματοσειρές ιστού είνα
pdfjs-editor-free-text-button =
.title = Κείμενο
pdfjs-editor-color-picker-free-text-input =
.title = Αλλαγή χρώματος κειμένου
pdfjs-editor-free-text-button-label = Κείμενο
pdfjs-editor-ink-button =
.title = Σχέδιο
pdfjs-editor-color-picker-ink-input =
.title = Αλλαγή χρώματος σχεδίου
pdfjs-editor-ink-button-label = Σχέδιο
pdfjs-editor-stamp-button =
.title = Προσθήκη ή επεξεργασία εικόνων
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Επισήμανση
.aria-label = Επισήμανση
pdfjs-highlight-floating-button-label = Επισήμανση
pdfjs-comment-floating-button =
.title = Σχόλιο
.aria-label = Σχόλιο
pdfjs-comment-floating-button-label = Σχόλιο
pdfjs-editor-comment-button =
.title = Σχόλιο
.aria-label = Σχόλιο
pdfjs-editor-comment-button-label = Σχόλιο
pdfjs-editor-signature-button =
.title = Προσθήκη υπογραφής
pdfjs-editor-signature-button-label = Προσθήκη υπογραφής
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Επεξεργασία κειμένου
.default-content = Ξεκινήστε να πληκτρολογείτε…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Σχόλια
*[other] Σχόλια
}
pdfjs-editor-comments-sidebar-close-button =
.title = Κλείσιμο πλευρικής στήλης
.aria-label = Κλείσιμο πλευρικής στήλης
pdfjs-editor-comments-sidebar-close-button-label = Κλείσιμο πλευρικής στήλης
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Βλέπετε κάτι αξιοσημείωτο; Επισημάνετε το και αφήστε ένα σχόλιο.
pdfjs-editor-comments-sidebar-no-comments-link = Μάθετε περισσότερα
pdfjs-free-text =
.aria-label = Επεξεργασία κειμένου
pdfjs-free-text-default-content = Ξεκινήστε να πληκτρολογείτε…
pdfjs-ink =
.aria-label = Επεξεργασία σχεδίων
pdfjs-ink-canvas =
.aria-label = Εικόνα από τον χρήστη
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Εναλλακτικό κείμενο
pdfjs-editor-alt-text-edit-button =
.aria-label = Επεξεργασία εναλλακτικού κειμένου
pdfjs-editor-alt-text-edit-button-label = Επεξεργασία εναλλακτικού κειμένου
pdfjs-editor-alt-text-dialog-label = Διαλέξτε μια επιλογή
pdfjs-editor-alt-text-dialog-description = Το εναλλακτικό κείμενο είναι χρήσιμο όταν οι άνθρωποι δεν μπορούν να δουν την εικόνα ή όταν αυτή δεν φορτώνεται.
pdfjs-editor-alt-text-add-description-label = Προσθήκη περιγραφής
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Επάνω αριστερή γωνία — αλλαγή μεγέθους
pdfjs-editor-resizer-label-top-middle = Μέσο επάνω πλευράς — αλλαγή μεγέθους
pdfjs-editor-resizer-label-top-right = Επάνω δεξιά γωνία — αλλαγή μεγέθους
pdfjs-editor-resizer-label-middle-right = Μέσο δεξιάς πλευράς — αλλαγή μεγέθους
pdfjs-editor-resizer-label-bottom-right = Κάτω δεξιά γωνία — αλλαγή μεγέθους
pdfjs-editor-resizer-label-bottom-middle = Μέσο κάτω πλευράς — αλλαγή μεγέθους
pdfjs-editor-resizer-label-bottom-left = Κάτω αριστερή γωνία — αλλαγή μεγέθους
pdfjs-editor-resizer-label-middle-left = Μέσο αριστερής πλευράς — αλλαγή μεγέθους
pdfjs-editor-resizer-top-left =
.aria-label = Επάνω αριστερή γωνία — αλλαγή μεγέθους
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Άμεση εμφάν
pdfjs-editor-alt-text-settings-show-dialog-description = Σας βοηθά να βεβαιωθείτε ότι όλες οι εικόνες σας έχουν εναλλακτικό κείμενο.
pdfjs-editor-alt-text-settings-close-button = Κλείσιμο
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Προστέθηκε επισήμανση
pdfjs-editor-freetext-added-alert = Προστέθηκε κείμενο
pdfjs-editor-ink-added-alert = Προστέθηκε σχέδιο
pdfjs-editor-stamp-added-alert = Προστέθηκε εικόνα
pdfjs-editor-signature-added-alert = Προστέθηκε υπογραφή
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Η επισήμανση αφαιρέθηκε
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Αποθήκευση υπογραφή
pdfjs-editor-add-signature-save-warning-message = Έχετε φτάσει το όριο των 5 αποθηκευμένων υπογραφών. Αφαιρέστε μία για να αποθηκεύσετε περισσότερες.
pdfjs-editor-add-signature-image-upload-error-title = Δεν ήταν δυνατή η μεταφόρτωση της εικόνας
pdfjs-editor-add-signature-image-upload-error-description = Ελέγξτε τη σύνδεση δικτύου σας ή δοκιμάστε μια άλλη εικόνα.
pdfjs-editor-add-signature-image-no-data-error-title = Δεν είναι δυνατή η μετατροπή αυτής της εικόνας σε υπογραφή
pdfjs-editor-add-signature-image-no-data-error-description = Δοκιμάστε να μεταφορτώσετε μια άλλη εικόνα.
pdfjs-editor-add-signature-error-close-button = Κλείσιμο
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Ακύρωση
pdfjs-editor-add-signature-add-button = Προσθήκη
pdfjs-editor-edit-signature-update-button = Ενημέρωση
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Επεξεργασία σχολίου
pdfjs-editor-edit-comment-popup-button =
.title = Επεξεργασία σχολίου
pdfjs-editor-delete-comment-popup-button-label = Αφαίρεση σχολίου
pdfjs-editor-delete-comment-popup-button =
.title = Αφαίρεση σχολίου
pdfjs-show-comment-button =
.title = Εμφάνιση σχολίου
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Επεξεργασία σχολίου
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Ενημέρωση
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Προσθήκη σχολίου
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Προσθήκη
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Ξεκινήστε να πληκτρολογείτε…
pdfjs-editor-edit-comment-dialog-cancel-button = Ακύρωση
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Προσθήκη σχολίου
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } kB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Title:
pdfjs-document-properties-author = Author:
pdfjs-document-properties-subject = Subject:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Modification Date:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creator:
pdfjs-document-properties-producer = PDF Producer:
pdfjs-document-properties-version = PDF Version:
@ -263,6 +275,10 @@ pdfjs-rendering-error = An error occurred while rendering the page.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Web fonts are disabled: unable to use embedded PDF fo
pdfjs-editor-free-text-button =
.title = Text
pdfjs-editor-color-picker-free-text-input =
.title = Change text colour
pdfjs-editor-free-text-button-label = Text
pdfjs-editor-ink-button =
.title = Draw
pdfjs-editor-color-picker-ink-input =
.title = Change drawing colour
pdfjs-editor-ink-button-label = Draw
pdfjs-editor-stamp-button =
.title = Add or edit images
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Highlight
.aria-label = Highlight
pdfjs-highlight-floating-button-label = Highlight
pdfjs-comment-floating-button =
.title = Comment
.aria-label = Comment
pdfjs-comment-floating-button-label = Comment
pdfjs-editor-comment-button =
.title = Comment
.aria-label = Comment
pdfjs-editor-comment-button-label = Comment
pdfjs-editor-signature-button =
.title = Add signature
pdfjs-editor-signature-button-label = Add signature
@ -324,11 +328,6 @@ pdfjs-editor-highlight-editor =
# “Drawing” is a noun, the string is used on the editor for drawings.
pdfjs-editor-ink-editor =
.aria-label = Drawing editor
# Used when a signature editor is selected/hovered.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-signature-editor1 =
.aria-description = Signature editor: { $description }
pdfjs-editor-stamp-editor =
.aria-label = Image editor
@ -374,27 +373,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Text Editor
.default-content = Start typing…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comment
*[other] Comments
}
pdfjs-editor-comments-sidebar-close-button =
.title = Close the sidebar
.aria-label = Close the sidebar
pdfjs-editor-comments-sidebar-close-button-label = Close the sidebar
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = See something noteworthy? Highlight it and leave a comment.
pdfjs-editor-comments-sidebar-no-comments-link = Learn more
pdfjs-free-text =
.aria-label = Text Editor
pdfjs-free-text-default-content = Start typing…
pdfjs-ink =
.aria-label = Draw Editor
pdfjs-ink-canvas =
.aria-label = User-created image
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alt text
pdfjs-editor-alt-text-edit-button =
.aria-label = Edit alt text
pdfjs-editor-alt-text-edit-button-label = Edit alt text
pdfjs-editor-alt-text-dialog-label = Choose an option
pdfjs-editor-alt-text-dialog-description = Alt text (alternative text) helps when people cant see the image or when it doesnt load.
pdfjs-editor-alt-text-add-description-label = Add a description
@ -414,6 +406,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Top left corner — resize
pdfjs-editor-resizer-label-top-middle = Top middle — resize
pdfjs-editor-resizer-label-top-right = Top right corner — resize
pdfjs-editor-resizer-label-middle-right = Middle right — resize
pdfjs-editor-resizer-label-bottom-right = Bottom right corner — resize
pdfjs-editor-resizer-label-bottom-middle = Bottom middle — resize
pdfjs-editor-resizer-label-bottom-left = Bottom left corner — resize
pdfjs-editor-resizer-label-middle-left = Middle left — resize
pdfjs-editor-resizer-top-left =
.aria-label = Top left corner — resize
pdfjs-editor-resizer-top-middle =
@ -519,14 +519,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Show alt text editor r
pdfjs-editor-alt-text-settings-show-dialog-description = Helps you make sure all your images have alt text.
pdfjs-editor-alt-text-settings-close-button = Close
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Highlight added
pdfjs-editor-freetext-added-alert = Text added
pdfjs-editor-ink-added-alert = Drawing added
pdfjs-editor-stamp-added-alert = Image added
pdfjs-editor-signature-added-alert = Signature added
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Highlight removed
@ -595,8 +587,6 @@ pdfjs-editor-add-signature-save-checkbox = Save signature
pdfjs-editor-add-signature-save-warning-message = Youve reached the limit of 5 saved signatures. Remove one to save more.
pdfjs-editor-add-signature-image-upload-error-title = Couldnt upload image
pdfjs-editor-add-signature-image-upload-error-description = Check your network connection or try another image.
pdfjs-editor-add-signature-image-no-data-error-title = Cant convert this image into a signature
pdfjs-editor-add-signature-image-no-data-error-description = Please try uploading a different image.
pdfjs-editor-add-signature-error-close-button = Close
## Dialog buttons
@ -605,34 +595,6 @@ pdfjs-editor-add-signature-cancel-button = Cancel
pdfjs-editor-add-signature-add-button = Add
pdfjs-editor-edit-signature-update-button = Update
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Edit comment
pdfjs-editor-edit-comment-popup-button =
.title = Edit comment
pdfjs-editor-delete-comment-popup-button-label = Remove comment
pdfjs-editor-delete-comment-popup-button =
.title = Remove comment
pdfjs-show-comment-button =
.title = Show comment
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Edit comment
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Update
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Add comment
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Add
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Start typing…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancel
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Add comment
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } kB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Title:
pdfjs-document-properties-author = Author:
pdfjs-document-properties-subject = Subject:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Modification Date:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creator:
pdfjs-document-properties-producer = PDF Producer:
pdfjs-document-properties-version = PDF Version:
@ -263,6 +275,10 @@ pdfjs-rendering-error = An error occurred while rendering the page.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Web fonts are disabled: unable to use embedded PDF fo
pdfjs-editor-free-text-button =
.title = Text
pdfjs-editor-color-picker-free-text-input =
.title = Change text colour
pdfjs-editor-free-text-button-label = Text
pdfjs-editor-ink-button =
.title = Draw
pdfjs-editor-color-picker-ink-input =
.title = Change drawing colour
pdfjs-editor-ink-button-label = Draw
pdfjs-editor-stamp-button =
.title = Add or edit images
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Highlight
.aria-label = Highlight
pdfjs-highlight-floating-button-label = Highlight
pdfjs-comment-floating-button =
.title = Comment
.aria-label = Comment
pdfjs-comment-floating-button-label = Comment
pdfjs-editor-comment-button =
.title = Comment
.aria-label = Comment
pdfjs-editor-comment-button-label = Comment
pdfjs-editor-signature-button =
.title = Add signature
pdfjs-editor-signature-button-label = Add signature
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Text Editor
.default-content = Start typing…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comment
*[other] Comments
}
pdfjs-editor-comments-sidebar-close-button =
.title = Close the sidebar
.aria-label = Close the sidebar
pdfjs-editor-comments-sidebar-close-button-label = Close the sidebar
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = See something noteworthy? Highlight it and leave a comment.
pdfjs-editor-comments-sidebar-no-comments-link = Learn more
pdfjs-free-text =
.aria-label = Text Editor
pdfjs-free-text-default-content = Start typing…
pdfjs-ink =
.aria-label = Draw Editor
pdfjs-ink-canvas =
.aria-label = User-created image
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alt text
pdfjs-editor-alt-text-edit-button =
.aria-label = Edit alt text
pdfjs-editor-alt-text-edit-button-label = Edit alt text
pdfjs-editor-alt-text-dialog-label = Choose an option
pdfjs-editor-alt-text-dialog-description = Alt text (alternative text) helps when people cant see the image or when it doesnt load.
pdfjs-editor-alt-text-add-description-label = Add a description
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Top left corner — resize
pdfjs-editor-resizer-label-top-middle = Top middle — resize
pdfjs-editor-resizer-label-top-right = Top right corner — resize
pdfjs-editor-resizer-label-middle-right = Middle right — resize
pdfjs-editor-resizer-label-bottom-right = Bottom right corner — resize
pdfjs-editor-resizer-label-bottom-middle = Bottom middle — resize
pdfjs-editor-resizer-label-bottom-left = Bottom left corner — resize
pdfjs-editor-resizer-label-middle-left = Middle left — resize
pdfjs-editor-resizer-top-left =
.aria-label = Top left corner — resize
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Show alt text editor r
pdfjs-editor-alt-text-settings-show-dialog-description = Helps you make sure all your images have alt text.
pdfjs-editor-alt-text-settings-close-button = Close
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Highlight added
pdfjs-editor-freetext-added-alert = Text added
pdfjs-editor-ink-added-alert = Drawing added
pdfjs-editor-stamp-added-alert = Image added
pdfjs-editor-signature-added-alert = Signature added
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Highlight removed
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Save signature
pdfjs-editor-add-signature-save-warning-message = Youve reached the limit of 5 saved signatures. Remove one to save more.
pdfjs-editor-add-signature-image-upload-error-title = Couldnt upload image
pdfjs-editor-add-signature-image-upload-error-description = Check your network connection or try another image.
pdfjs-editor-add-signature-image-no-data-error-title = Cant convert this image into a signature
pdfjs-editor-add-signature-image-no-data-error-description = Please try uploading a different image.
pdfjs-editor-add-signature-error-close-button = Close
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Cancel
pdfjs-editor-add-signature-add-button = Add
pdfjs-editor-edit-signature-update-button = Update
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Edit comment
pdfjs-editor-edit-comment-popup-button =
.title = Edit comment
pdfjs-editor-delete-comment-popup-button-label = Remove comment
pdfjs-editor-delete-comment-popup-button =
.title = Remove comment
pdfjs-show-comment-button =
.title = Show comment
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Edit comment
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Update
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Add comment
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Add
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Start typing…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancel
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Add comment
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -180,6 +180,23 @@ pdfjs-printing-not-ready = Warning: The PDF is not fully loaded for printing.
## Tooltips and alt text for side panel toolbar buttons
pdfjs-toggle-sidebar-button =
.title = Toggle Sidebar
pdfjs-toggle-sidebar-notification-button =
.title = Toggle Sidebar (document contains outline/attachments/layers)
pdfjs-toggle-sidebar-button-label = Toggle Sidebar
pdfjs-document-outline-button =
.title = Show Document Outline (double-click to expand/collapse all items)
pdfjs-document-outline-button-label = Document Outline
pdfjs-attachments-button =
.title = Show Attachments
pdfjs-attachments-button-label = Attachments
pdfjs-layers-button =
.title = Show Layers (double-click to reset all layers to the default state)
pdfjs-layers-button-label = Layers
pdfjs-thumbs-button =
.title = Show Thumbnails
pdfjs-thumbs-button-label = Thumbnails
pdfjs-current-outline-item-button =
.title = Find Current Outline Item
pdfjs-current-outline-item-button-label = Current Outline Item
@ -289,13 +306,9 @@ pdfjs-web-fonts-disabled = Web fonts are disabled: unable to use embedded PDF fo
pdfjs-editor-free-text-button =
.title = Text
pdfjs-editor-color-picker-free-text-input =
.title = Change text color
pdfjs-editor-free-text-button-label = Text
pdfjs-editor-ink-button =
.title = Draw
pdfjs-editor-color-picker-ink-input =
.title = Change drawing color
pdfjs-editor-ink-button-label = Draw
pdfjs-editor-stamp-button =
.title = Add or edit images
@ -307,14 +320,6 @@ pdfjs-highlight-floating-button1 =
.title = Highlight
.aria-label = Highlight
pdfjs-highlight-floating-button-label = Highlight
pdfjs-comment-floating-button =
.title = Comment
.aria-label = Comment
pdfjs-comment-floating-button-label = Comment
pdfjs-editor-comment-button =
.title = Comment
.aria-label = Comment
pdfjs-editor-comment-button-label = Comment
pdfjs-editor-signature-button =
.title = Add signature
pdfjs-editor-signature-button-label = Add signature
@ -382,24 +387,6 @@ pdfjs-free-text2 =
.aria-label = Text Editor
.default-content = Start typing…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comment
*[other] Comments
}
pdfjs-editor-comments-sidebar-close-button =
.title = Close the sidebar
.aria-label = Close the sidebar
pdfjs-editor-comments-sidebar-close-button-label = Close the sidebar
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = See something noteworthy? Highlight it and leave a comment.
pdfjs-editor-comments-sidebar-no-comments-link = Learn more
## Alt-text dialog
# Alternative text (alt text) helps when people can't see the image.
@ -532,19 +519,20 @@ pdfjs-editor-alt-text-settings-automatic-title = Automatic alt text
pdfjs-editor-alt-text-settings-create-model-button-label = Create alt text automatically
pdfjs-editor-alt-text-settings-create-model-description = Suggests descriptions to help people who cant see the image or when the image doesnt load.
# Variables:
# $totalSize (Number) - the total size (in MB) of the AI model.
pdfjs-editor-alt-text-settings-download-model-label = Alt text AI model ({ $totalSize } MB)
pdfjs-editor-alt-text-settings-ai-model-description = Runs locally on your device so your data stays private. Required for automatic alt text.
pdfjs-editor-alt-text-settings-delete-model-button = Delete
pdfjs-editor-alt-text-settings-download-model-button = Download
pdfjs-editor-alt-text-settings-downloading-model-button = Downloading…
pdfjs-editor-alt-text-settings-editor-title = Alt text editor
pdfjs-editor-alt-text-settings-show-dialog-button-label = Show alt text editor right away when adding an image
pdfjs-editor-alt-text-settings-show-dialog-description = Helps you make sure all your images have alt text.
pdfjs-editor-alt-text-settings-close-button = Close
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Highlight added
pdfjs-editor-freetext-added-alert = Text added
pdfjs-editor-ink-added-alert = Drawing added
pdfjs-editor-stamp-added-alert = Image added
pdfjs-editor-signature-added-alert = Signature added
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Highlight removed
@ -552,7 +540,6 @@ pdfjs-editor-undo-bar-message-freetext = Text removed
pdfjs-editor-undo-bar-message-ink = Drawing removed
pdfjs-editor-undo-bar-message-stamp = Image removed
pdfjs-editor-undo-bar-message-signature = Signature removed
pdfjs-editor-undo-bar-message-comment = Comment removed
# Variables:
# $count (Number) - the number of removed annotations.
pdfjs-editor-undo-bar-message-multiple =
@ -619,8 +606,6 @@ pdfjs-editor-add-signature-save-checkbox = Save signature
pdfjs-editor-add-signature-save-warning-message = Youve reached the limit of 5 saved signatures. Remove one to save more.
pdfjs-editor-add-signature-image-upload-error-title = Couldnt upload image
pdfjs-editor-add-signature-image-upload-error-description = Check your network connection or try another image.
pdfjs-editor-add-signature-image-no-data-error-title = Cant convert this image into a signature
pdfjs-editor-add-signature-image-no-data-error-description = Please try uploading a different image.
pdfjs-editor-add-signature-error-close-button = Close
## Dialog buttons
@ -645,117 +630,3 @@ pdfjs-editor-edit-signature-dialog-title = Edit description
## Dialog buttons
pdfjs-editor-edit-signature-update-button = Update
## Comment popup
pdfjs-show-comment-button =
.title = Show comment
pdfjs-editor-edit-comment-popup-button-label = Edit comment
pdfjs-editor-edit-comment-popup-button =
.title = Edit comment
pdfjs-editor-delete-comment-popup-button-label = Remove comment
pdfjs-editor-delete-comment-popup-button =
.title = Remove comment
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Edit comment
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Update
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Add comment
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Add
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Start typing…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancel
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Add comment
## The view manager is a sidebar displaying different views:
## - thumbnails;
## - outline;
## - attachments;
## - layers.
## The thumbnails view is used to edit the pdf: remove/insert pages, ...
pdfjs-toggle-views-manager-button =
.title = Toggle Sidebar
pdfjs-toggle-views-manager-notification-button =
.title = Toggle Sidebar (document contains thumbnails/outline/attachments/layers)
pdfjs-toggle-views-manager-button-label = Toggle Sidebar
pdfjs-views-manager-sidebar =
.aria-label = Sidebar
pdfjs-views-manager-view-selector-button =
.title = Views
pdfjs-views-manager-view-selector-button-label = Views
pdfjs-views-manager-pages-title = Pages
pdfjs-views-manager-outlines-title = Document outline
pdfjs-views-manager-attachments-title = Attachments
pdfjs-views-manager-layers-title = Layers
pdfjs-views-manager-pages-option-label = Pages
pdfjs-views-manager-outlines-option-label = Document outline
pdfjs-views-manager-attachments-option-label = Attachments
pdfjs-views-manager-layers-option-label = Layers
pdfjs-views-manager-add-file-button =
.title = Add file
pdfjs-views-manager-add-file-button-label = Add file
# Variables:
# $count (Number) - the number of selected pages.
pdfjs-views-manager-pages-status-action-label =
{ $count ->
[one] { $count } selected
*[other] { $count } selected
}
pdfjs-views-manager-pages-status-none-action-label = Select pages
pdfjs-views-manager-pages-status-action-button-label = Manage
pdfjs-views-manager-pages-status-copy-button-label = Copy
pdfjs-views-manager-pages-status-cut-button-label = Cut
pdfjs-views-manager-pages-status-delete-button-label = Delete
pdfjs-views-manager-pages-status-save-as-button-label = Save as…
# Variables:
# $count (Number) - the number of selected pages to be cut.
pdfjs-views-manager-status-undo-cut-label =
{ $count ->
[one] 1 page cut
*[other] { $count } pages cut
}
# Variables:
# $count (Number) - the number of selected pages to be copied.
pdfjs-views-manager-pages-status-undo-copy-label =
{ $count ->
[one] 1 page copied
*[other] { $count } pages copied
}
# Variables:
# $count (Number) - the number of selected pages to be deleted.
pdfjs-views-manager-pages-status-undo-delete-label =
{ $count ->
[one] 1 page deleted
*[other] { $count } pages deleted
}
pdfjs-views-manager-pages-status-waiting-ready-label = Getting your file ready…
pdfjs-views-manager-pages-status-waiting-uploading-label = Uploading file…
pdfjs-views-manager-status-warning-cut-label = Couldnt cut. Refresh page and try again.
pdfjs-views-manager-status-warning-copy-label = Couldnt copy. Refresh page and try again.
pdfjs-views-manager-status-warning-delete-label = Couldnt delete. Refresh page and try again.
pdfjs-views-manager-status-warning-save-label = Couldnt save. Refresh page and try again.
pdfjs-views-manager-status-undo-button-label = Undo
pdfjs-views-manager-status-close-button =
.title = Close
pdfjs-views-manager-status-close-button-label = Close

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } Mo ({ $b } oktetoj)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KO ({ $size_b } oktetoj)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MO ({ $size_b } oktetoj)
pdfjs-document-properties-title = Titolo:
pdfjs-document-properties-author = Aŭtoro:
pdfjs-document-properties-subject = Temo:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Dato de modifo:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Kreinto:
pdfjs-document-properties-producer = Produktinto de PDF:
pdfjs-document-properties-version = Versio de PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Okazis eraro dum la montro de la paĝo.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Neaktivaj teksaĵaj tiparoj: ne elbas uzi enmetitajn
pdfjs-editor-free-text-button =
.title = Teksto
pdfjs-editor-color-picker-free-text-input =
.title = Ŝanĝi koloron de teksto
pdfjs-editor-free-text-button-label = Teksto
pdfjs-editor-ink-button =
.title = Desegni
pdfjs-editor-color-picker-ink-input =
.title = Ŝanĝi desegnan koloron
pdfjs-editor-ink-button-label = Desegni
pdfjs-editor-stamp-button =
.title = Aldoni aŭ modifi bildojn
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Elstarigi
.aria-label = Elstarigi
pdfjs-highlight-floating-button-label = Elstarigi
pdfjs-comment-floating-button =
.title = Komenti
.aria-label = Komenti
pdfjs-comment-floating-button-label = Komenti
pdfjs-editor-comment-button =
.title = Komenti
.aria-label = Komenti
pdfjs-editor-comment-button-label = Komenti
pdfjs-editor-signature-button =
.title = Aldoni subskribon
pdfjs-editor-signature-button-label = Aldoni subskribon
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Teksta redaktilo
.default-content = Komencu tajpi…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Komenti
*[other] Komentoj
}
pdfjs-editor-comments-sidebar-close-button =
.title = Fermi la flankan strion
.aria-label = Fermi la flankan strion
pdfjs-editor-comments-sidebar-close-button-label = Fermi la flankan strion
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Ĉu vi rimarkas ion interesan? Elstarigu tion kaj aldonu komenton.
pdfjs-editor-comments-sidebar-no-comments-link = Pli da informo
pdfjs-free-text =
.aria-label = Teksta redaktilo
pdfjs-free-text-default-content = Ektajpi…
pdfjs-ink =
.aria-label = Desegnan redaktilon
pdfjs-ink-canvas =
.aria-label = Bildo kreita de uzanto
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Alternativa teksto
pdfjs-editor-alt-text-edit-button =
.aria-label = Redakti alternativan tekston
pdfjs-editor-alt-text-edit-button-label = Redakti alternativan tekston
pdfjs-editor-alt-text-dialog-label = Elektu eblon
pdfjs-editor-alt-text-dialog-description = Alternativa teksto helpas personojn, en la okazoj kiam ili ne povas vidi aŭ ŝargi la bildon.
pdfjs-editor-alt-text-add-description-label = Aldoni priskribon
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Supra maldekstra angulo — ŝangi grandon
pdfjs-editor-resizer-label-top-middle = Supra mezo — ŝanĝi grandon
pdfjs-editor-resizer-label-top-right = Supran dekstran angulon — ŝanĝi grandon
pdfjs-editor-resizer-label-middle-right = Dekstra mezo — ŝanĝi grandon
pdfjs-editor-resizer-label-bottom-right = Malsupra deksta angulo — ŝanĝi grandon
pdfjs-editor-resizer-label-bottom-middle = Malsupra mezo — ŝanĝi grandon
pdfjs-editor-resizer-label-bottom-left = Malsupra maldekstra angulo — ŝanĝi grandon
pdfjs-editor-resizer-label-middle-left = Maldekstra mezo — ŝanĝi grandon
pdfjs-editor-resizer-top-left =
.aria-label = Supra maldekstra angulo — ŝangi grandon
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Montri redaktilon de a
pdfjs-editor-alt-text-settings-show-dialog-description = Tio ĉi helpas vin kontroli ĉu ĉiuj bildoj havas alternativan tekston.
pdfjs-editor-alt-text-settings-close-button = Fermi
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Elstarigo aldonita
pdfjs-editor-freetext-added-alert = Teksto aldonita
pdfjs-editor-ink-added-alert = Desegno aldonita
pdfjs-editor-stamp-added-alert = Bildo aldonita
pdfjs-editor-signature-added-alert = Subskribo aldonita
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Elstaraĵo forigita
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Konservi subskribon
pdfjs-editor-add-signature-save-warning-message = Vi atingis la limon de kvin konservitaj subskriboj. Forigi unu por povi konservi pli da.
pdfjs-editor-add-signature-image-upload-error-title = Ne eblis alŝuti bildon
pdfjs-editor-add-signature-image-upload-error-description = Kontrolu vian retaliron aŭ provu alŝuti alian bildon.
pdfjs-editor-add-signature-image-no-data-error-title = Ne eblas konverti tiun ĉi bildon al subskribo
pdfjs-editor-add-signature-image-no-data-error-description = Bonvolu provi alŝuti novan bildon.
pdfjs-editor-add-signature-error-close-button = Fermi
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Nuligi
pdfjs-editor-add-signature-add-button = Aldoni
pdfjs-editor-edit-signature-update-button = Ĝisdatigi
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Modifi komenton
pdfjs-editor-edit-comment-popup-button =
.title = Modifi komenton
pdfjs-editor-delete-comment-popup-button-label = Forigi komenton
pdfjs-editor-delete-comment-popup-button =
.title = Forigi komenton
pdfjs-show-comment-button =
.title = Montri komenton
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Modifi komenton
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Ĝisdatigi
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Aldoni komenton
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Aldoni
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Ektajpi…
pdfjs-editor-edit-comment-dialog-cancel-button = Nuligi
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Aldoni komenton
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Título:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Asunto:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Fecha de modificación:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creador:
pdfjs-document-properties-producer = PDF Productor:
pdfjs-document-properties-version = Versión de PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Ocurrió un error al dibujar la página.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Tipografía web deshabilitada: no se pueden usar tipo
pdfjs-editor-free-text-button =
.title = Texto
pdfjs-editor-color-picker-free-text-input =
.title = Cambiar color del texto
pdfjs-editor-free-text-button-label = Texto
pdfjs-editor-ink-button =
.title = Dibujar
pdfjs-editor-color-picker-ink-input =
.title = Cambiar color del dibujo
pdfjs-editor-ink-button-label = Dibujar
pdfjs-editor-stamp-button =
.title = Agregar o editar imágenes
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Resaltar
.aria-label = Resaltar
pdfjs-highlight-floating-button-label = Resaltar
pdfjs-comment-floating-button =
.title = Comentar
.aria-label = Comentar
pdfjs-comment-floating-button-label = Comentar
pdfjs-editor-comment-button =
.title = Comentar
.aria-label = Comentar
pdfjs-editor-comment-button-label = Comentar
pdfjs-editor-signature-button =
.title = Agregar firma
pdfjs-editor-signature-button-label = Agregar firma
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Editor de texto
.default-content = Comenzar a tipear…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comentario
*[other] Comentarios
}
pdfjs-editor-comments-sidebar-close-button =
.title = Cerrar la barra lateral
.aria-label = Cerrar la barra lateral
pdfjs-editor-comments-sidebar-close-button-label = Cerrar la barra lateral
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = ¿Ve algo digno de mención? Resáltelo y deje un comentario.
pdfjs-editor-comments-sidebar-no-comments-link = Conocer más
pdfjs-free-text =
.aria-label = Editor de texto
pdfjs-free-text-default-content = Empezar a tipear…
pdfjs-ink =
.aria-label = Editor de dibujos
pdfjs-ink-canvas =
.aria-label = Imagen creada por el usuario
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Texto alternativo
pdfjs-editor-alt-text-edit-button =
.aria-label = Editar texto alternativo
pdfjs-editor-alt-text-edit-button-label = Editar el texto alternativo
pdfjs-editor-alt-text-dialog-label = Eligir una opción
pdfjs-editor-alt-text-dialog-description = El texto alternativo (texto alternativo) ayuda cuando las personas no pueden ver la imagen o cuando no se carga.
pdfjs-editor-alt-text-add-description-label = Agregar una descripción
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Esquina superior izquierda — cambiar el tamaño
pdfjs-editor-resizer-label-top-middle = Arriba en el medio — cambiar el tamaño
pdfjs-editor-resizer-label-top-right = Esquina superior derecha — cambiar el tamaño
pdfjs-editor-resizer-label-middle-right = Al centro a la derecha — cambiar el tamaño
pdfjs-editor-resizer-label-bottom-right = Esquina inferior derecha — cambiar el tamaño
pdfjs-editor-resizer-label-bottom-middle = Abajo en el medio — cambiar el tamaño
pdfjs-editor-resizer-label-bottom-left = Esquina inferior izquierda — cambiar el tamaño
pdfjs-editor-resizer-label-middle-left = Al centro a la izquierda — cambiar el tamaño
pdfjs-editor-resizer-top-left =
.aria-label = Esquina superior izquierda — cambiar el tamaño
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Mostrar el editor de t
pdfjs-editor-alt-text-settings-show-dialog-description = Te ayuda a asegurarse de que todas las imágenes tengan texto alternativo.
pdfjs-editor-alt-text-settings-close-button = Cerrar
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Resaltado agregado
pdfjs-editor-freetext-added-alert = Texto agregado
pdfjs-editor-ink-added-alert = Dibujo agregado
pdfjs-editor-stamp-added-alert = Imagen agregada
pdfjs-editor-signature-added-alert = Firma agregada
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Resaltado eliminado
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Guardar firma
pdfjs-editor-add-signature-save-warning-message = Se alcanzó el límite de 5 firmas guardadas. Elimine una para guardar más.
pdfjs-editor-add-signature-image-upload-error-title = No se pudo subir la imagen
pdfjs-editor-add-signature-image-upload-error-description = Verifique la conexión de red o pruebe con otra imagen.
pdfjs-editor-add-signature-image-no-data-error-title = No se puede convertir esta imagen en una firma
pdfjs-editor-add-signature-image-no-data-error-description = Intente subir una imagen diferente.
pdfjs-editor-add-signature-error-close-button = Cerrar
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Cancelar
pdfjs-editor-add-signature-add-button = Agregar
pdfjs-editor-edit-signature-update-button = Actualizar
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Editar comentario
pdfjs-editor-edit-comment-popup-button =
.title = Editar comentario
pdfjs-editor-delete-comment-popup-button-label = Eliminar comentario
pdfjs-editor-delete-comment-popup-button =
.title = Eliminar comentario
pdfjs-show-comment-button =
.title = Mostrar comentario
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Editar comentario
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Actualizar
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Agregar comentario
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Agregar
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Empezar a tipear…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancelar
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Agregar comentario
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Título:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Asunto:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Fecha de modificación:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creador:
pdfjs-document-properties-producer = Productor del PDF:
pdfjs-document-properties-version = Versión de PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Ocurrió un error al renderizar la página.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Las tipografías web están desactivadas: imposible u
pdfjs-editor-free-text-button =
.title = Texto
pdfjs-editor-color-picker-free-text-input =
.title = Cambiar color del texto
pdfjs-editor-free-text-button-label = Texto
pdfjs-editor-ink-button =
.title = Dibujar
pdfjs-editor-color-picker-ink-input =
.title = Cambiar color del dibujo
pdfjs-editor-ink-button-label = Dibujar
pdfjs-editor-stamp-button =
.title = Añadir o editar imágenes
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Destacar
.aria-label = Destacar
pdfjs-highlight-floating-button-label = Destacar
pdfjs-comment-floating-button =
.title = Comentario
.aria-label = Comentario
pdfjs-comment-floating-button-label = Comentario
pdfjs-editor-comment-button =
.title = Comentar
.aria-label = Comentar
pdfjs-editor-comment-button-label = Comentar
pdfjs-editor-signature-button =
.title = Añadir firma
pdfjs-editor-signature-button-label = Añadir firma
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Editor de texto
.default-content = Empieza a escribir…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comentario
*[other] Comentarios
}
pdfjs-editor-comments-sidebar-close-button =
.title = Cerrar la barra lateral
.aria-label = Cerrar la barra lateral
pdfjs-editor-comments-sidebar-close-button-label = Cerrar la barra lateral
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = ¿Ves algo interesante? Resáltalo y deja un comentario.
pdfjs-editor-comments-sidebar-no-comments-link = Más información
pdfjs-free-text =
.aria-label = Editor de texto
pdfjs-free-text-default-content = Empieza a escribir…
pdfjs-ink =
.aria-label = Editor de dibujos
pdfjs-ink-canvas =
.aria-label = Imagen creada por el usuario
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Texto alternativo
pdfjs-editor-alt-text-edit-button =
.aria-label = Editar texto alternativo
pdfjs-editor-alt-text-edit-button-label = Editar texto alternativo
pdfjs-editor-alt-text-dialog-label = Elige una opción
pdfjs-editor-alt-text-dialog-description = El texto alternativo (alt text) ayuda cuando las personas no pueden ver la imagen o cuando no se carga.
pdfjs-editor-alt-text-add-description-label = Añade una descripción
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Esquina superior izquierda — cambiar el tamaño
pdfjs-editor-resizer-label-top-middle = Borde superior en el medio — cambiar el tamaño
pdfjs-editor-resizer-label-top-right = Esquina superior derecha — cambiar el tamaño
pdfjs-editor-resizer-label-middle-right = Borde derecho en el medio — cambiar el tamaño
pdfjs-editor-resizer-label-bottom-right = Esquina inferior derecha — cambiar el tamaño
pdfjs-editor-resizer-label-bottom-middle = Borde inferior en el medio — cambiar el tamaño
pdfjs-editor-resizer-label-bottom-left = Esquina inferior izquierda — cambiar el tamaño
pdfjs-editor-resizer-label-middle-left = Borde izquierdo en el medio — cambiar el tamaño
pdfjs-editor-resizer-top-left =
.aria-label = Esquina superior izquierda — cambiar el tamaño
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Mostrar el editor de t
pdfjs-editor-alt-text-settings-show-dialog-description = Te ayuda a asegurarte de que todas tus imágenes tengan texto alternativo.
pdfjs-editor-alt-text-settings-close-button = Cerrar
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Destacado añadido
pdfjs-editor-freetext-added-alert = Texto añadido
pdfjs-editor-ink-added-alert = Dibujo añadido
pdfjs-editor-stamp-added-alert = Imagen añadida
pdfjs-editor-signature-added-alert = Firma añadida
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Resaltado eliminado
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Guardar firma
pdfjs-editor-add-signature-save-warning-message = Has alcanzado el límite de 5 firmas guardadas. Elimina una para guardar más.
pdfjs-editor-add-signature-image-upload-error-title = No se pudo subir la imagen
pdfjs-editor-add-signature-image-upload-error-description = Verifica tu conexión de red o prueba con otra imagen.
pdfjs-editor-add-signature-image-no-data-error-title = No se puede convertir esta imagen en una firma
pdfjs-editor-add-signature-image-no-data-error-description = Por favor, intenta cargar una imagen diferente.
pdfjs-editor-add-signature-error-close-button = Cerrar
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Cancelar
pdfjs-editor-add-signature-add-button = Añadir
pdfjs-editor-edit-signature-update-button = Actualizar
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Editar comentario
pdfjs-editor-edit-comment-popup-button =
.title = Editar comentario
pdfjs-editor-delete-comment-popup-button-label = Eliminar comentario
pdfjs-editor-delete-comment-popup-button =
.title = Eliminar comentario
pdfjs-show-comment-button =
.title = Mostrar comentario
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Editar comentario
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Actualizar
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Añadir comentario
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Añadir
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Empieza a escribir…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancelar
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Añadir comentario
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Título:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Asunto:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Fecha de modificación:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creador:
pdfjs-document-properties-producer = Productor PDF:
pdfjs-document-properties-version = Versión PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Ocurrió un error al renderizar la página.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Las tipografías web están desactivadas: es imposibl
pdfjs-editor-free-text-button =
.title = Texto
pdfjs-editor-color-picker-free-text-input =
.title = Cambiar el color del texto
pdfjs-editor-free-text-button-label = Texto
pdfjs-editor-ink-button =
.title = Dibujar
pdfjs-editor-color-picker-ink-input =
.title = Cambiar el color del dibujo
pdfjs-editor-ink-button-label = Dibujar
pdfjs-editor-stamp-button =
.title = Añadir o editar imágenes
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Resaltar
.aria-label = Resaltar
pdfjs-highlight-floating-button-label = Resaltar
pdfjs-comment-floating-button =
.title = Comentario
.aria-label = Comentario
pdfjs-comment-floating-button-label = Comentario
pdfjs-editor-comment-button =
.title = Comentario
.aria-label = Comentario
pdfjs-editor-comment-button-label = Comentario
pdfjs-editor-signature-button =
.title = Añadir firma
pdfjs-editor-signature-button-label = Añadir firma
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Editor de texto
.default-content = Empiece a escribir…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comentario
*[other] Comentarios
}
pdfjs-editor-comments-sidebar-close-button =
.title = Cerrar la barra lateral
.aria-label = Cerrar la barra lateral
pdfjs-editor-comments-sidebar-close-button-label = Cerrar la barra lateral
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = ¿Ve algo interesante? Resáltelo y deje un comentario.
pdfjs-editor-comments-sidebar-no-comments-link = Saber más
pdfjs-free-text =
.aria-label = Editor de texto
pdfjs-free-text-default-content = Empezar a escribir…
pdfjs-ink =
.aria-label = Editor de dibujos
pdfjs-ink-canvas =
.aria-label = Imagen creada por el usuario
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Texto alternativo
pdfjs-editor-alt-text-edit-button =
.aria-label = Editar el texto alternativo
pdfjs-editor-alt-text-edit-button-label = Editar el texto alternativo
pdfjs-editor-alt-text-dialog-label = Eligir una opción
pdfjs-editor-alt-text-dialog-description = El texto alternativo (texto alternativo) ayuda cuando las personas no pueden ver la imagen o cuando no se carga.
pdfjs-editor-alt-text-add-description-label = Añadir una descripción
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Esquina superior izquierda — redimensionar
pdfjs-editor-resizer-label-top-middle = Borde superior en el medio — redimensionar
pdfjs-editor-resizer-label-top-right = Esquina superior derecha — redimensionar
pdfjs-editor-resizer-label-middle-right = Borde derecho en el medio — redimensionar
pdfjs-editor-resizer-label-bottom-right = Esquina inferior derecha — redimensionar
pdfjs-editor-resizer-label-bottom-middle = Borde inferior en el medio — redimensionar
pdfjs-editor-resizer-label-bottom-left = Esquina inferior izquierda — redimensionar
pdfjs-editor-resizer-label-middle-left = Borde izquierdo en el medio — redimensionar
pdfjs-editor-resizer-top-left =
.aria-label = Esquina superior izquierda — redimensionar
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Mostrar el editor de t
pdfjs-editor-alt-text-settings-show-dialog-description = Le ayuda a asegurarse de que todas sus imágenes tengan texto alternativo.
pdfjs-editor-alt-text-settings-close-button = Cerrar
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Resaltado añadido
pdfjs-editor-freetext-added-alert = Texto añadido
pdfjs-editor-ink-added-alert = Dibujo añadido
pdfjs-editor-stamp-added-alert = Imagen añadida
pdfjs-editor-signature-added-alert = Firma añadida
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Resaltado eliminado
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Guardar firma
pdfjs-editor-add-signature-save-warning-message = Ha alcanzado el límite de 5 firmas guardadas. Elimine una para guardar más.
pdfjs-editor-add-signature-image-upload-error-title = No se ha podido subir la imagen
pdfjs-editor-add-signature-image-upload-error-description = Compruebe su conexión de red o pruebe con otra imagen.
pdfjs-editor-add-signature-image-no-data-error-title = No se puede convertir esta imagen en una firma
pdfjs-editor-add-signature-image-no-data-error-description = Por favor, intente cargar una imagen diferente.
pdfjs-editor-add-signature-error-close-button = Cerrar
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Cancelar
pdfjs-editor-add-signature-add-button = Añadir
pdfjs-editor-edit-signature-update-button = Actualizar
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Editar comentario
pdfjs-editor-edit-comment-popup-button =
.title = Editar comentario
pdfjs-editor-delete-comment-popup-button-label = Eliminar comentario
pdfjs-editor-delete-comment-popup-button =
.title = Eliminar comentario
pdfjs-show-comment-button =
.title = Mostrar comentario
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Editar comentario
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Actualizar
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Añadir comentario
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Añadir
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Empezar a escribir…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancelar
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Añadir comentario
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Título:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Asunto:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Fecha de modificación:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creador:
pdfjs-document-properties-producer = Productor PDF:
pdfjs-document-properties-version = Versión PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Un error ocurrió al renderizar la página.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Las fuentes web están desactivadas: es imposible usa
pdfjs-editor-free-text-button =
.title = Texto
pdfjs-editor-color-picker-free-text-input =
.title = Cambiar el color del texto
pdfjs-editor-free-text-button-label = Texto
pdfjs-editor-ink-button =
.title = Dibujar
pdfjs-editor-color-picker-ink-input =
.title = Cambiar el color del dibujo
pdfjs-editor-ink-button-label = Dibujar
pdfjs-editor-stamp-button =
.title = Agregar o editar imágenes
@ -304,33 +316,12 @@ pdfjs-highlight-floating-button1 =
.title = Destacados
.aria-label = Destacados
pdfjs-highlight-floating-button-label = Destacados
pdfjs-comment-floating-button =
.title = Comentario
.aria-label = Comentario
pdfjs-comment-floating-button-label = Comentario
pdfjs-editor-comment-button =
.title = Comentario
.aria-label = Comentario
pdfjs-editor-comment-button-label = Comentario
pdfjs-editor-signature-button =
.title = Agregar firma
pdfjs-editor-signature-button-label = Añadir firma
## Default editor aria labels
# “Highlight” is a noun, the string is used on the editor for highlights.
pdfjs-editor-highlight-editor =
.aria-label = Editor de destacados
# “Drawing” is a noun, the string is used on the editor for drawings.
pdfjs-editor-ink-editor =
.aria-label = Editor de dibujos
# Used when a signature editor is selected/hovered.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-signature-editor1 =
.aria-description = Editor de firmas: { $description }
pdfjs-editor-stamp-editor =
.aria-label = Editor de imágenes
## Remove button for the various kind of editor.
@ -360,41 +351,27 @@ pdfjs-editor-stamp-add-image-button-label = Agregar imagen
pdfjs-editor-free-highlight-thickness-input = Espesor
pdfjs-editor-free-highlight-thickness-title =
.title = Cambiar el grosor al resaltar elementos que no sean texto
pdfjs-editor-add-signature-container =
.aria-label = Controles de firma y firmas guardadas
pdfjs-editor-signature-add-signature-button =
.title = Agregar nueva firma
pdfjs-editor-signature-add-signature-button-label = Agregar nueva firma
# Used on the button to use an already saved signature.
# Variables:
# $description (String) - a string describing/labeling the signature.
pdfjs-editor-add-saved-signature-button =
.title = Firma guardada: { $description }
# .default-content is used as a placeholder in an empty text editor.
pdfjs-free-text2 =
.aria-label = Editor de texto
.default-content = Comenzar a escribir…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Comentario
*[other] Comentarios
}
pdfjs-editor-comments-sidebar-close-button =
.title = Cerrar la barra lateral
.aria-label = Cerrar la barra lateral
pdfjs-editor-comments-sidebar-close-button-label = Cerrar la barra lateral
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = ¿Ves algo interesante? Resáltalo y deja un comentario.
pdfjs-editor-comments-sidebar-no-comments-link = Saber más
pdfjs-free-text =
.aria-label = Editor de texto
pdfjs-free-text-default-content = Empieza a escribir…
pdfjs-ink =
.aria-label = Editor de dibujo
pdfjs-ink-canvas =
.aria-label = Imagen creada por el usuario
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Texto alternativo
pdfjs-editor-alt-text-edit-button =
.aria-label = Editar texto alternativo
pdfjs-editor-alt-text-edit-button-label = Editar texto alternativo
pdfjs-editor-alt-text-dialog-label = Elige una opción
pdfjs-editor-alt-text-dialog-description = El texto alternativo (texto alternativo) ayuda cuando las personas no pueden ver la imagen o cuando no se carga.
pdfjs-editor-alt-text-add-description-label = Añadir una descripción
@ -414,6 +391,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Esquina superior izquierda: cambiar el tamaño
pdfjs-editor-resizer-label-top-middle = Arriba en el medio: cambiar el tamaño
pdfjs-editor-resizer-label-top-right = Esquina superior derecha: cambiar el tamaño
pdfjs-editor-resizer-label-middle-right = Centro derecha: cambiar el tamaño
pdfjs-editor-resizer-label-bottom-right = Esquina inferior derecha: cambiar el tamaño
pdfjs-editor-resizer-label-bottom-middle = Abajo en el medio: cambiar el tamaño
pdfjs-editor-resizer-label-bottom-left = Esquina inferior izquierda: cambiar el tamaño
pdfjs-editor-resizer-label-middle-left = Centro izquierda: cambiar el tamaño
pdfjs-editor-resizer-top-left =
.aria-label = Esquina superior izquierda — redimensionar
pdfjs-editor-resizer-top-middle =
@ -519,14 +504,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Mostrar el editor de t
pdfjs-editor-alt-text-settings-show-dialog-description = Te ayuda a asegurarte de que todas tus imágenes tengan texto alternativo.
pdfjs-editor-alt-text-settings-close-button = Cerrar
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Destacado añadido
pdfjs-editor-freetext-added-alert = Texto agregado
pdfjs-editor-ink-added-alert = Dibujo agregado
pdfjs-editor-stamp-added-alert = Imagen agregada
pdfjs-editor-signature-added-alert = Firma agregada
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Resaltado eliminado
@ -550,7 +527,6 @@ pdfjs-editor-undo-bar-close-button-label = Cerrar
## Add a signature dialog
pdfjs-editor-add-signature-dialog-label = Este modal permite al usuario crear una firma para añadirla a un documento PDF. El usuario puede editar el nombre (que también sirve como texto alternativo) y, opcionalmente, guardar la firma para utilizarla en otras ocasiones.
pdfjs-editor-add-signature-dialog-title = Agregar una firma
## Tab names
@ -571,16 +547,6 @@ pdfjs-editor-add-signature-type-input =
.placeholder = Escribe tu firma
pdfjs-editor-add-signature-draw-placeholder = Dibuja tu firma
pdfjs-editor-add-signature-draw-thickness-range-label = Grossor
# Variables:
# $thickness (Number) - the thickness (in pixels) of the line used to draw a signature.
pdfjs-editor-add-signature-draw-thickness-range =
.title = Grosor del dibujo: { $thickness }
pdfjs-editor-add-signature-image-placeholder = Arrastra un archivo aquí para cargarlo
pdfjs-editor-add-signature-image-browse-link =
{ PLATFORM() ->
[macos] O elegir archivos de imagen
*[other] O buscar archivos de imagen
}
## Controls
@ -595,49 +561,15 @@ pdfjs-editor-add-signature-save-checkbox = Guardar firma
pdfjs-editor-add-signature-save-warning-message = Has alcanzado el límite de 5 firmas guardadas. Elimina una para guardar más.
pdfjs-editor-add-signature-image-upload-error-title = No se pudo cargar la imagen
pdfjs-editor-add-signature-image-upload-error-description = Verifica tu conexión de red o prueba con otra imagen.
pdfjs-editor-add-signature-image-no-data-error-title = No se puede convertir esta imagen en una firma
pdfjs-editor-add-signature-image-no-data-error-description = Intenta cargar una imagen diferente.
pdfjs-editor-add-signature-error-close-button = Cerrar
## Dialog buttons
pdfjs-editor-add-signature-cancel-button = Cancelar
pdfjs-editor-add-signature-add-button = Agregar
pdfjs-editor-edit-signature-update-button = Actualizar
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Editar comentario
pdfjs-editor-edit-comment-popup-button =
.title = Editar comentario
pdfjs-editor-delete-comment-popup-button-label = Eliminar comentario
pdfjs-editor-delete-comment-popup-button =
.title = Eliminar comentario
pdfjs-show-comment-button =
.title = Mostrar comentario
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Editar comentario
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Actualizar
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Agregar comentario
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Agregar
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Empieza a escribir…
pdfjs-editor-edit-comment-dialog-cancel-button = Cancelar
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Añadir comentario
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =
.title = Eliminar la firma guardada
pdfjs-editor-delete-signature-button-label1 = Eliminar la firma guardada
## Editor toolbar

View File

@ -92,12 +92,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Dokumendi omadused…
pdfjs-document-properties-file-name = Faili nimi:
pdfjs-document-properties-file-size = Faili suurus:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KiB ({ $size_b } baiti)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MiB ({ $size_b } baiti)
pdfjs-document-properties-title = Pealkiri:
pdfjs-document-properties-author = Autor:
pdfjs-document-properties-subject = Teema:
pdfjs-document-properties-keywords = Märksõnad:
pdfjs-document-properties-creation-date = Loodud:
pdfjs-document-properties-modification-date = Muudetud:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date } { $time }
pdfjs-document-properties-creator = Looja:
pdfjs-document-properties-producer = Generaator:
pdfjs-document-properties-version = Generaatori versioon:
@ -225,6 +237,10 @@ pdfjs-rendering-error = Lehe renderdamisel esines viga.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date } { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -241,6 +257,62 @@ pdfjs-password-ok-button = Sobib
pdfjs-password-cancel-button = Loobu
pdfjs-web-fonts-disabled = Veebifondid on keelatud: PDFiga kaasatud fonte pole võimalik kasutada.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
pdfjs-editor-alt-text-settings-delete-model-button = Kustuta
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } byte)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } byte)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } byte)
pdfjs-document-properties-title = Izenburua:
pdfjs-document-properties-author = Egilea:
pdfjs-document-properties-subject = Gaia:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Aldatze-data:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Sortzailea:
pdfjs-document-properties-producer = PDFaren ekoizlea:
pdfjs-document-properties-version = PDF bertsioa:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Errorea gertatu da orria errendatzean.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Webeko letra-tipoak desgaituta daude: ezin dira kapsu
pdfjs-editor-free-text-button =
.title = Testua
pdfjs-editor-color-picker-free-text-input =
.title = Aldatu testuaren kolorea
pdfjs-editor-free-text-button-label = Testua
pdfjs-editor-ink-button =
.title = Marrazkia
pdfjs-editor-color-picker-ink-input =
.title = Aldatu marrazteko kolorea
pdfjs-editor-ink-button-label = Marrazkia
pdfjs-editor-stamp-button =
.title = Gehitu edo editatu irudiak
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Nabarmendu
.aria-label = Nabarmendu
pdfjs-highlight-floating-button-label = Nabarmendu
pdfjs-comment-floating-button =
.title = Iruzkina
.aria-label = Iruzkina
pdfjs-comment-floating-button-label = Iruzkina
pdfjs-editor-comment-button =
.title = Iruzkina
.aria-label = Iruzkina
pdfjs-editor-comment-button-label = Iruzkina
pdfjs-editor-signature-button =
.title = Gehitu sinadura
pdfjs-editor-signature-button-label = Gehitu sinadura
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Testu-editorea
.default-content = Hasi idazten…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Iruzkina
*[other] Iruzkinak
}
pdfjs-editor-comments-sidebar-close-button =
.title = Itxi alboko barra
.aria-label = Itxi alboko barra
pdfjs-editor-comments-sidebar-close-button-label = Itxi alboko barra
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Azpimarratzeko zerbait ikusi duzu? Nabarmen ezazu eta utzi iruzkina.
pdfjs-editor-comments-sidebar-no-comments-link = Argibide gehiago
pdfjs-free-text =
.aria-label = Testu-editorea
pdfjs-free-text-default-content = Hasi idazten…
pdfjs-ink =
.aria-label = Marrazki-editorea
pdfjs-ink-canvas =
.aria-label = Erabiltzaileak sortutako irudia
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Testu alternatiboa
pdfjs-editor-alt-text-edit-button =
.aria-label = Editatu testu alternatiboa
pdfjs-editor-alt-text-edit-button-label = Editatu testu alternatiboa
pdfjs-editor-alt-text-dialog-label = Aukeratu aukera
pdfjs-editor-alt-text-dialog-description = Testu alternatiboak laguntzen du jendeak ezin duenean irudia ikusi edo ez denean kargatzen.
pdfjs-editor-alt-text-add-description-label = Gehitu azalpena
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Goiko ezkerreko izkina — aldatu tamaina
pdfjs-editor-resizer-label-top-middle = Goian erdian — aldatu tamaina
pdfjs-editor-resizer-label-top-right = Goiko eskuineko izkina — aldatu tamaina
pdfjs-editor-resizer-label-middle-right = Erdian eskuinean — aldatu tamaina
pdfjs-editor-resizer-label-bottom-right = Beheko eskuineko izkina — aldatu tamaina
pdfjs-editor-resizer-label-bottom-middle = Behean erdian — aldatu tamaina
pdfjs-editor-resizer-label-bottom-left = Beheko ezkerreko izkina — aldatu tamaina
pdfjs-editor-resizer-label-middle-left = Erdian ezkerrean — aldatu tamaina
pdfjs-editor-resizer-top-left =
.aria-label = Goiko ezkerreko izkina — aldatu tamaina
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Erakutsi testu alterna
pdfjs-editor-alt-text-settings-show-dialog-description = Zure irudiek testu alternatiboa duela ziurtatzen laguntzen dizu.
pdfjs-editor-alt-text-settings-close-button = Itxi
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Nabarmentzea gehituta
pdfjs-editor-freetext-added-alert = Testua gehituta
pdfjs-editor-ink-added-alert = Marrazkia gehituta
pdfjs-editor-stamp-added-alert = Irudia gehituta
pdfjs-editor-signature-added-alert = Sinadura gehituta
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Nabarmentzea kenduta
@ -599,8 +596,6 @@ pdfjs-editor-add-signature-save-checkbox = Gorde sinadura
pdfjs-editor-add-signature-save-warning-message = Gordetako sinadura kopuruaren mugara heldu zara (5). Gehiago gorde ahal izateko, ken ezazu bat.
pdfjs-editor-add-signature-image-upload-error-title = Ezin da irudia igo
pdfjs-editor-add-signature-image-upload-error-description = Egiaztatu zure sareko konexioa edo saiatu beste irudi batekin.
pdfjs-editor-add-signature-image-no-data-error-title = Ezin da irudia sinaduran bihurtu
pdfjs-editor-add-signature-image-no-data-error-description = Saiatu beste irudi bat igotzen.
pdfjs-editor-add-signature-error-close-button = Itxi
## Dialog buttons
@ -609,34 +604,6 @@ pdfjs-editor-add-signature-cancel-button = Utzi
pdfjs-editor-add-signature-add-button = Gehitu
pdfjs-editor-edit-signature-update-button = Eguneratu
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Editatu iruzkina
pdfjs-editor-edit-comment-popup-button =
.title = Editatu iruzkina
pdfjs-editor-delete-comment-popup-button-label = Kendu iruzkina
pdfjs-editor-delete-comment-popup-button =
.title = Kendu iruzkina
pdfjs-show-comment-button =
.title = Erakutsi iruzkina
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Editatu iruzkina
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Eguneratu
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Gehitu iruzkina
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Gehitu
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Hasi idazten…
pdfjs-editor-edit-comment-dialog-cancel-button = Utzi
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Gehitu iruzkina
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -103,6 +103,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } مگابایت ({ $b } بایت)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } کیلوبایت ({ $size_b } بایت)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } مگابایت ({ $size_b } بایت)
pdfjs-document-properties-title = عنوان:
pdfjs-document-properties-author = نویسنده:
pdfjs-document-properties-subject = موضوع:
@ -112,6 +120,10 @@ pdfjs-document-properties-modification-date = تاریخ ویرایش:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }، { $time }
pdfjs-document-properties-creator = ایجاد کننده:
pdfjs-document-properties-producer = ایجاد کننده PDF:
pdfjs-document-properties-version = نسخه PDF:
@ -225,6 +237,10 @@ pdfjs-rendering-error = هنگام بارگیری صفحه خطایی رخ دا
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }، { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -263,6 +279,12 @@ pdfjs-highlight-floating-button1 =
.aria-label = برجسته کردن
pdfjs-highlight-floating-button-label = برجسته کردن
## Default editor aria labels
## Remove button for the various kind of editor.
##
# Editor Parameters
@ -276,6 +298,9 @@ pdfjs-editor-stamp-add-image-button-label = افزودن تصویر
pdfjs-free-text2 =
.aria-label = ویرایشگر متن
.default-content = شروع به نوشتن کنید…
pdfjs-free-text =
.aria-label = ویرایشگر متن
pdfjs-free-text-default-content = شروع به نوشتن کنید…
## Alt-text dialog
@ -283,6 +308,10 @@ pdfjs-editor-alt-text-add-description-label = افزودن توضیحات
pdfjs-editor-alt-text-cancel-button = انصراف
pdfjs-editor-alt-text-save-button = ذخیره
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
pdfjs-editor-colorpicker-button =
@ -320,3 +349,30 @@ pdfjs-editor-alt-text-settings-delete-model-button = حذف
pdfjs-editor-alt-text-settings-download-model-button = دریافت
pdfjs-editor-alt-text-settings-downloading-model-button = در حال دریافت…
pdfjs-editor-alt-text-settings-close-button = بستن
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -89,12 +89,24 @@ pdfjs-document-properties-button =
pdfjs-document-properties-button-label = Keeroraaɗi Winndannde…
pdfjs-document-properties-file-name = Innde fiilde:
pdfjs-document-properties-file-size = Ɓetol fiilde:
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bite)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bite)
pdfjs-document-properties-title = Tiitoonde:
pdfjs-document-properties-author = Binnduɗo:
pdfjs-document-properties-subject = Toɓɓere:
pdfjs-document-properties-keywords = Kelmekele jiytirɗe:
pdfjs-document-properties-creation-date = Ñalnde Sosaa:
pdfjs-document-properties-modification-date = Ñalnde Waylaa:
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Cosɗo:
pdfjs-document-properties-producer = Paggiiɗo PDF:
pdfjs-document-properties-version = Yamre PDF:
@ -195,6 +207,9 @@ pdfjs-page-scale-actual = Ɓetol Jaati
# $scale (Number) - percent value for page scale
pdfjs-page-scale-percent = { $scale }%
## PDF page
## Loading indicator messages
pdfjs-loading-error = Juumre waɗii tuma nde loowata PDF oo.
@ -220,3 +235,63 @@ pdfjs-password-invalid = Finnde moƴƴaani. Tiiɗno eto kadi.
pdfjs-password-ok-button = OK
pdfjs-password-cancel-button = Haaytu
pdfjs-web-fonts-disabled = Ponte geese ko daaƴaaɗe: horiima huutoraade ponte PDF coomtoraaɗe.
## Editing
## Default editor aria labels
## Remove button for the various kind of editor.
##
## Alt-text dialog
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
## Color picker
## Show all highlights
## This is a toggle button to show/hide all the highlights.
## New alt-text dialog
## Group note for entire feature: Alternative text (alt text) helps when people can't see the image. This feature includes a tool to create alt text automatically using an AI model that works locally on the user's device to preserve privacy.
## Image alt-text settings
## "Annotations removed" bar
## Add a signature dialog
## Tab names
## Tab panels
## Controls
## Dialog buttons
## Main menu for adding/removing signatures
## Editor toolbar
## Edit signature description dialog

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } Mt ({ $b } tavua)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } kt ({ $size_b } tavua)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } Mt ({ $size_b } tavua)
pdfjs-document-properties-title = Otsikko:
pdfjs-document-properties-author = Tekijä:
pdfjs-document-properties-subject = Aihe:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Muokkauspäivämäärä:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Luoja:
pdfjs-document-properties-producer = PDF-tuottaja:
pdfjs-document-properties-version = PDF-versio:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Tapahtui virhe piirrettäessä sivua.
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = Verkkosivujen omat kirjasinlajit on estetty: ei voida
pdfjs-editor-free-text-button =
.title = Teksti
pdfjs-editor-color-picker-free-text-input =
.title = Muuta tekstin väriä
pdfjs-editor-free-text-button-label = Teksti
pdfjs-editor-ink-button =
.title = Piirros
pdfjs-editor-color-picker-ink-input =
.title = Vaihda piirustuksen väriä
pdfjs-editor-ink-button-label = Piirros
pdfjs-editor-stamp-button =
.title = Lisää tai muokkaa kuvia
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Korostus
.aria-label = Korostus
pdfjs-highlight-floating-button-label = Korostus
pdfjs-comment-floating-button =
.title = Kommentti
.aria-label = Kommentti
pdfjs-comment-floating-button-label = Kommentti
pdfjs-editor-comment-button =
.title = Kommentti
.aria-label = Kommentti
pdfjs-editor-comment-button-label = Kommentti
pdfjs-editor-signature-button =
.title = Lisää allekirjoitus
pdfjs-editor-signature-button-label = Lisää allekirjoitus
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Tekstimuokkain
.default-content = Aloita kirjoittaminen…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Kommentti
*[other] Kommenttia
}
pdfjs-editor-comments-sidebar-close-button =
.title = Sulje sivupaneeli
.aria-label = Sulje sivupaneeli
pdfjs-editor-comments-sidebar-close-button-label = Sulje sivupaneeli
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Näetkö jotain huomionarvoista? Korosta se ja jätä kommentti.
pdfjs-editor-comments-sidebar-no-comments-link = Lue lisää
pdfjs-free-text =
.aria-label = Tekstimuokkain
pdfjs-free-text-default-content = Aloita kirjoittaminen…
pdfjs-ink =
.aria-label = Piirrustusmuokkain
pdfjs-ink-canvas =
.aria-label = Käyttäjän luoma kuva
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Vaihtoehtoinen teksti
pdfjs-editor-alt-text-edit-button =
.aria-label = Muokkaa vaihtoehtoista tekstiä
pdfjs-editor-alt-text-edit-button-label = Muokkaa vaihtoehtoista tekstiä
pdfjs-editor-alt-text-dialog-label = Valitse vaihtoehto
pdfjs-editor-alt-text-dialog-description = Vaihtoehtoinen teksti ("alt-teksti") auttaa ihmisiä, jotka eivät näe kuvaa tai kun kuva ei lataudu.
pdfjs-editor-alt-text-add-description-label = Lisää kuvaus
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Vasen yläkulma - muuta kokoa
pdfjs-editor-resizer-label-top-middle = Ylhäällä keskellä - muuta kokoa
pdfjs-editor-resizer-label-top-right = Oikea yläkulma - muuta kokoa
pdfjs-editor-resizer-label-middle-right = Keskellä oikealla - muuta kokoa
pdfjs-editor-resizer-label-bottom-right = Oikea alakulma - muuta kokoa
pdfjs-editor-resizer-label-bottom-middle = Alhaalla keskellä - muuta kokoa
pdfjs-editor-resizer-label-bottom-left = Vasen alakulma - muuta kokoa
pdfjs-editor-resizer-label-middle-left = Keskellä vasemmalla - muuta kokoa
pdfjs-editor-resizer-top-left =
.aria-label = Vasen yläkulma - muuta kokoa
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Näytä vaihtoehtoisen
pdfjs-editor-alt-text-settings-show-dialog-description = Auttaa varmistamaan, että kaikissa kuvissasi on vaihtoehtoinen teksti.
pdfjs-editor-alt-text-settings-close-button = Sulje
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Korostus lisätty
pdfjs-editor-freetext-added-alert = Teksti lisätty
pdfjs-editor-ink-added-alert = Piirustus lisätty
pdfjs-editor-stamp-added-alert = Kuva lisätty
pdfjs-editor-signature-added-alert = Allekirjoitus lisätty
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Korostus poistettu
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Tallenna allekirjoitus
pdfjs-editor-add-signature-save-warning-message = Olet saavuttanut viiden tallennetun allekirjoituksen rajan. Poista yksi säästääksesi lisää.
pdfjs-editor-add-signature-image-upload-error-title = Kuvaa ei voitu lähettää
pdfjs-editor-add-signature-image-upload-error-description = Tarkista verkkoyhteyden tila tai kokeile toista kuvaa.
pdfjs-editor-add-signature-image-no-data-error-title = Tätä kuvaa ei voida muuntaa allekirjoitukseksi
pdfjs-editor-add-signature-image-no-data-error-description = Yritä lähettää eri kuva.
pdfjs-editor-add-signature-error-close-button = Sulje
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Peruuta
pdfjs-editor-add-signature-add-button = Lisää
pdfjs-editor-edit-signature-update-button = Päivitä
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Muokkaa kommenttia
pdfjs-editor-edit-comment-popup-button =
.title = Muokkaa kommenttia
pdfjs-editor-delete-comment-popup-button-label = Poista kommentti
pdfjs-editor-delete-comment-popup-button =
.title = Poista kommentti
pdfjs-show-comment-button =
.title = Näytä kommentti
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Muokkaa kommenttia
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Päivitä
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Lisää kommentti
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Lisää
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Aloita kirjoittaminen…
pdfjs-editor-edit-comment-dialog-cancel-button = Peruuta
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Lisää kommentti
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } Mo ({ $b } octets)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } Ko ({ $size_b } octets)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } Mo ({ $size_b } octets)
pdfjs-document-properties-title = Titre :
pdfjs-document-properties-author = Auteur :
pdfjs-document-properties-subject = Sujet :
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Modifié le :
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date } à { $time }
pdfjs-document-properties-creator = Créé par :
pdfjs-document-properties-producer = Outil de conversion PDF :
pdfjs-document-properties-version = Version PDF :
@ -259,6 +271,10 @@ pdfjs-rendering-error = Une erreur sest produite lors de laffichage de la
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date } à { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -282,13 +298,9 @@ pdfjs-web-fonts-disabled = Les polices web sont désactivées : impossible d
pdfjs-editor-free-text-button =
.title = Texte
pdfjs-editor-color-picker-free-text-input =
.title = Changer la couleur du texte
pdfjs-editor-free-text-button-label = Texte
pdfjs-editor-ink-button =
.title = Dessiner
pdfjs-editor-color-picker-ink-input =
.title = Changer la couleur pour dessiner
pdfjs-editor-ink-button-label = Dessiner
pdfjs-editor-stamp-button =
.title = Ajouter ou modifier des images
@ -300,14 +312,6 @@ pdfjs-highlight-floating-button1 =
.title = Surligner
.aria-label = Surligner
pdfjs-highlight-floating-button-label = Surligner
pdfjs-comment-floating-button =
.title = Commenter
.aria-label = Commenter
pdfjs-comment-floating-button-label = Commenter
pdfjs-editor-comment-button =
.title = Commenter
.aria-label = Commenter
pdfjs-editor-comment-button-label = Commenter
pdfjs-editor-signature-button =
.title = Ajouter une signature
pdfjs-editor-signature-button-label = Ajouter une signature
@ -370,27 +374,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Éditeur de texte
.default-content = Commencez à écrire…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Commentaire
*[other] Commentaires
}
pdfjs-editor-comments-sidebar-close-button =
.title = Fermer le panneau latéral
.aria-label = Fermer le panneau latéral
pdfjs-editor-comments-sidebar-close-button-label = Fermer le panneau latéral
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Vous remarquez quelque chose dintéressant ? Mettez-le en surbrillance et ajoutez un commentaire.
pdfjs-editor-comments-sidebar-no-comments-link = En savoir plus
pdfjs-free-text =
.aria-label = Éditeur de texte
pdfjs-free-text-default-content = Commencer à écrire…
pdfjs-ink =
.aria-label = Éditeur de dessin
pdfjs-ink-canvas =
.aria-label = Image créée par lutilisateur·trice
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Texte alternatif
pdfjs-editor-alt-text-edit-button =
.aria-label = Modifier le texte alternatif
pdfjs-editor-alt-text-edit-button-label = Modifier le texte alternatif
pdfjs-editor-alt-text-dialog-label = Sélectionnez une option
pdfjs-editor-alt-text-dialog-description = Le texte alternatif est utile lorsque des personnes ne peuvent pas voir limage ou que limage ne se charge pas.
pdfjs-editor-alt-text-add-description-label = Ajouter une description
@ -410,6 +407,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Coin supérieur gauche — redimensionner
pdfjs-editor-resizer-label-top-middle = Milieu haut — redimensionner
pdfjs-editor-resizer-label-top-right = Coin supérieur droit — redimensionner
pdfjs-editor-resizer-label-middle-right = Milieu droit — redimensionner
pdfjs-editor-resizer-label-bottom-right = Coin inférieur droit — redimensionner
pdfjs-editor-resizer-label-bottom-middle = Centre bas — redimensionner
pdfjs-editor-resizer-label-bottom-left = Coin inférieur gauche — redimensionner
pdfjs-editor-resizer-label-middle-left = Milieu gauche — redimensionner
pdfjs-editor-resizer-top-left =
.aria-label = Coin supérieur gauche — redimensionner
pdfjs-editor-resizer-top-middle =
@ -515,14 +520,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Afficher léditeur
pdfjs-editor-alt-text-settings-show-dialog-description = Vous aide à vous assurer que toutes vos images ont du texte alternatif.
pdfjs-editor-alt-text-settings-close-button = Fermer
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Surlignage ajouté
pdfjs-editor-freetext-added-alert = Texte ajouté
pdfjs-editor-ink-added-alert = Dessin ajouté
pdfjs-editor-stamp-added-alert = Image ajoutée
pdfjs-editor-signature-added-alert = Signature ajoutée
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Surlignage supprimé
@ -591,8 +588,6 @@ pdfjs-editor-add-signature-save-checkbox = Enregistrer la signature
pdfjs-editor-add-signature-save-warning-message = Vous avez atteint la limite de 5 signatures enregistrées. Supprimez-en une pour en enregistrer une autre.
pdfjs-editor-add-signature-image-upload-error-title = Impossible denvoyer limage
pdfjs-editor-add-signature-image-upload-error-description = Vérifiez votre connexion réseau ou essayez avec une autre image.
pdfjs-editor-add-signature-image-no-data-error-title = Impossible de convertir cette image en signature
pdfjs-editor-add-signature-image-no-data-error-description = Veuillez essayer denvoyer une autre image.
pdfjs-editor-add-signature-error-close-button = Fermer
## Dialog buttons
@ -601,34 +596,6 @@ pdfjs-editor-add-signature-cancel-button = Annuler
pdfjs-editor-add-signature-add-button = Ajouter
pdfjs-editor-edit-signature-update-button = Mettre à jour
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Modifier le commentaire
pdfjs-editor-edit-comment-popup-button =
.title = Modifier le commentaire
pdfjs-editor-delete-comment-popup-button-label = Supprimer le commentaire
pdfjs-editor-delete-comment-popup-button =
.title = Supprimer le commentaire
pdfjs-show-comment-button =
.title = Voir les commentaires
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Modifier le commentaire
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Mettre à jour
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Ajouter un commentaire
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Ajouter
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Commencer à écrire…
pdfjs-editor-edit-comment-dialog-cancel-button = Annuler
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Ajouter un commentaire
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

View File

@ -112,6 +112,14 @@ pdfjs-document-properties-size-kb = { NUMBER($kb, maximumSignificantDigits: 3) }
# $mb (Number) - the PDF file size in megabytes
# $b (Number) - the PDF file size in bytes
pdfjs-document-properties-size-mb = { NUMBER($mb, maximumSignificantDigits: 3) } MB ({ $b } bytes)
# Variables:
# $size_kb (Number) - the PDF file size in kilobytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-kb = { $size_kb } KB ({ $size_b } bytes)
# Variables:
# $size_mb (Number) - the PDF file size in megabytes
# $size_b (Number) - the PDF file size in bytes
pdfjs-document-properties-mb = { $size_mb } MB ({ $size_b } bytes)
pdfjs-document-properties-title = Titul:
pdfjs-document-properties-author = Autôr:
pdfjs-document-properties-subject = Ogjet:
@ -121,6 +129,10 @@ pdfjs-document-properties-modification-date = Date di modifiche:
# Variables:
# $dateObj (Date) - the creation/modification date and time of the PDF file
pdfjs-document-properties-date-time-string = { DATETIME($dateObj, dateStyle: "short", timeStyle: "medium") }
# Variables:
# $date (Date) - the creation/modification date of the PDF file
# $time (Time) - the creation/modification time of the PDF file
pdfjs-document-properties-date-string = { $date }, { $time }
pdfjs-document-properties-creator = Creatôr
pdfjs-document-properties-producer = Gjeneradôr PDF:
pdfjs-document-properties-version = Version PDF:
@ -263,6 +275,10 @@ pdfjs-rendering-error = Al è vignût fûr un erôr tal realizâ la visualizazio
## Annotations
# Variables:
# $date (Date) - the modification date of the annotation
# $time (Time) - the modification time of the annotation
pdfjs-annotation-date-string = { $date }, { $time }
# .alt: This is used as a tooltip.
# Variables:
# $type (String) - an annotation type from a list defined in the PDF spec
@ -286,13 +302,9 @@ pdfjs-web-fonts-disabled = I caratars dal Web a son disativâts: Impussibil dopr
pdfjs-editor-free-text-button =
.title = Test
pdfjs-editor-color-picker-free-text-input =
.title = Cambie colôr dal test
pdfjs-editor-free-text-button-label = Test
pdfjs-editor-ink-button =
.title = Dissen
pdfjs-editor-color-picker-ink-input =
.title = Cambie colôr dal dissen
pdfjs-editor-ink-button-label = Dissen
pdfjs-editor-stamp-button =
.title = Zonte o modifiche imagjins
@ -304,14 +316,6 @@ pdfjs-highlight-floating-button1 =
.title = Evidenzie
.aria-label = Evidenzie
pdfjs-highlight-floating-button-label = Evidenzie
pdfjs-comment-floating-button =
.title = Comente
.aria-label = Comente
pdfjs-comment-floating-button-label = Comente
pdfjs-editor-comment-button =
.title = Comente
.aria-label = Comente
pdfjs-editor-comment-button-label = Comente
pdfjs-editor-signature-button =
.title = Zonte firme
pdfjs-editor-signature-button-label = Zonte firme
@ -374,27 +378,20 @@ pdfjs-editor-add-saved-signature-button =
pdfjs-free-text2 =
.aria-label = Editôr di test
.default-content = Scomence a scrivi…
# Used to show how many comments are present in the pdf file.
# Variables:
# $count (Number) - the number of comments.
pdfjs-editor-comments-sidebar-title =
{ $count ->
[one] Coment
*[other] Coments
}
pdfjs-editor-comments-sidebar-close-button =
.title = Siere la sbare laterâl
.aria-label = Siere la sbare laterâl
pdfjs-editor-comments-sidebar-close-button-label = Siere la sbare laterâl
# Instructional copy to add a comment by selecting text or an annotations.
pdfjs-editor-comments-sidebar-no-comments1 = Âstu cjatât alc di interessant? Evidenzilu e lasse un coment.
pdfjs-editor-comments-sidebar-no-comments-link = Plui informazions
pdfjs-free-text =
.aria-label = Editôr di test
pdfjs-free-text-default-content = Scomence a scrivi…
pdfjs-ink =
.aria-label = Editôr dissens
pdfjs-ink-canvas =
.aria-label = Imagjin creade dal utent
## Alt-text dialog
pdfjs-editor-alt-text-button-label = Test alternatîf
pdfjs-editor-alt-text-edit-button =
.aria-label = Modifiche test alternatîf
pdfjs-editor-alt-text-edit-button-label = Modifiche test alternatîf
pdfjs-editor-alt-text-dialog-label = Sielç une opzion
pdfjs-editor-alt-text-dialog-description = Il test alternatîf (“alt text”) al jude cuant che lis personis no puedin viodi la imagjin o cuant che la imagjine no ven cjariade.
pdfjs-editor-alt-text-add-description-label = Zonte une descrizion
@ -414,6 +411,14 @@ pdfjs-editor-alt-text-button =
## Editor resizers
## This is used in an aria label to help to understand the role of the resizer.
pdfjs-editor-resizer-label-top-left = Cjanton in alt a çampe — ridimensione
pdfjs-editor-resizer-label-top-middle = Bande superiôr tal mieç — ridimensione
pdfjs-editor-resizer-label-top-right = Cjanton in alt a diestre — ridimensione
pdfjs-editor-resizer-label-middle-right = Bande diestre tal mieç — ridimensione
pdfjs-editor-resizer-label-bottom-right = Cjanton in bas a diestre — ridimensione
pdfjs-editor-resizer-label-bottom-middle = Bande inferiôr tal mieç — ridimensione
pdfjs-editor-resizer-label-bottom-left = Cjanton in bas a çampe — ridimensione
pdfjs-editor-resizer-label-middle-left = Bande di çampe tal mieç — ridimensione
pdfjs-editor-resizer-top-left =
.aria-label = Cjanton in alt a çampe — ridimensione
pdfjs-editor-resizer-top-middle =
@ -519,14 +524,6 @@ pdfjs-editor-alt-text-settings-show-dialog-button-label = Mostre l'editôr dal t
pdfjs-editor-alt-text-settings-show-dialog-description = Ti jude a sigurâti che dutis lis tôs imagjins a vedin il test alternatîf.
pdfjs-editor-alt-text-settings-close-button = Siere
## Accessibility labels (announced by screen readers) for objects added to the editor.
pdfjs-editor-highlight-added-alert = Evidenziazion zontade
pdfjs-editor-freetext-added-alert = Test zontât
pdfjs-editor-ink-added-alert = Dissen zontât
pdfjs-editor-stamp-added-alert = Imagjin zontade
pdfjs-editor-signature-added-alert = Firme zontade
## "Annotations removed" bar
pdfjs-editor-undo-bar-message-highlight = Evidenziazion gjavade
@ -595,8 +592,6 @@ pdfjs-editor-add-signature-save-checkbox = Salve firme
pdfjs-editor-add-signature-save-warning-message = Tu sês rivât/rivade al limit di 5 firmis salvadis. Gjave une par salvânt une altre.
pdfjs-editor-add-signature-image-upload-error-title = Impussibil cjariâ la imagjin
pdfjs-editor-add-signature-image-upload-error-description = Controle la conession di rêt o prove cuntune altre imagjin.
pdfjs-editor-add-signature-image-no-data-error-title = Impussibil convertî cheste imagjin intune firme
pdfjs-editor-add-signature-image-no-data-error-description = Prove a cjariâ une altre imagjin.
pdfjs-editor-add-signature-error-close-button = Siere
## Dialog buttons
@ -605,34 +600,6 @@ pdfjs-editor-add-signature-cancel-button = Anule
pdfjs-editor-add-signature-add-button = Zonte
pdfjs-editor-edit-signature-update-button = Inzorne
## Comment popup
pdfjs-editor-edit-comment-popup-button-label = Modifiche coment
pdfjs-editor-edit-comment-popup-button =
.title = Modifiche coment
pdfjs-editor-delete-comment-popup-button-label = Gjave coment
pdfjs-editor-delete-comment-popup-button =
.title = Gjave coment
pdfjs-show-comment-button =
.title = Mostre coment
## Edit a comment dialog
# An existing comment is edited
pdfjs-editor-edit-comment-dialog-title-when-editing = Modifiche coment
pdfjs-editor-edit-comment-dialog-save-button-when-editing = Inzorne
# No existing comment
pdfjs-editor-edit-comment-dialog-title-when-adding = Zonte coment
pdfjs-editor-edit-comment-dialog-save-button-when-adding = Zonte
pdfjs-editor-edit-comment-dialog-text-input =
.placeholder = Scomence a scrivi…
pdfjs-editor-edit-comment-dialog-cancel-button = Anule
## Edit a comment button in the editor toolbar
pdfjs-editor-add-comment-button =
.title = Zonte coment
## Main menu for adding/removing signatures
pdfjs-editor-delete-signature-button1 =

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