Max Schaefer
3ae37d1b06
Remove a few useless assignments.
2017-11-03 11:36:48 +00:00
Max Schaefer
bc8f673522
Remove spurious arguments to NullStream
constructor.
2017-11-03 10:14:32 +00:00
Max Schaefer
3ab1a9922a
Rearrange a few declarations so that they precede their uses.
2017-11-03 10:14:32 +00:00
Jonas Jenwald
2dbd3f2603
[api-major] Remove the TypedArray polyfills
2017-11-01 10:31:28 +01:00
Brendan Dahl
b46443f0c1
Merge pull request #9077 from yurydelendik/v2
...
Version 2.0 merge
2017-10-31 14:24:20 -07:00
Jonas Jenwald
83e8398ff2
For non-embedded fonts, map softhyphen (0x00AD) to regular hyphen (0x002D) (issue 9084)
...
In the PDF file, the `ToUnicode` data first maps the hyphen correctly, and then *overwrites* it to point to the softhyphen instead. That one cannot be rendered in browsers, and an empty space thus appear instead.
Fixes 9084.
2017-10-31 13:26:04 +01:00
Jonas Jenwald
92fcfce685
Merge pull request #9082 from brendandahl/issue7562
...
Overwrite glyphs contour count if it's less than -1.
2017-10-30 20:44:01 +01:00
Brendan Dahl
17037b5e51
Overwrite glyphs contour count if it's less than -1.
...
The test pdf has a contour count of -70, but OTS doesn't
like values less than -1.
Fixes issue #7562 .
2017-10-30 09:16:51 -07:00
Yury Delendik
b4e25fb2e8
Merge remote-tracking branch 'mozilla/version-2.0' into v2
2017-10-27 14:01:45 -05:00
Jonas Jenwald
5e627810e4
Use stringToBytes
in more places
...
Rather than having (basically) verbatim copies of `stringToBytes` in a few places, we can simply use the helper function directly instead.
2017-10-26 11:01:13 +02:00
Jonas Jenwald
e94a0fd4e7
Extract the actual decoding in CCITTFaxStream
into a new CCITTFaxDecoder
"class", which the new CCITTFaxStream
depends on
2017-10-24 16:03:08 +02:00
Jonas Jenwald
bb35095083
Move CCITTFaxStream
and Jbig2Stream
, from src/core/stream.js
, to separate files
2017-10-24 12:00:40 +02:00
Jonas Jenwald
d71a576b30
Merge pull request #9045 from brendandahl/sani-name
...
Sanitize name index in compile phase of CFF.
2017-10-24 11:48:03 +02:00
Brendan Dahl
6b12612a52
Sanitize name index in compile phase of CFF.
...
Fixes #8960
2017-10-23 17:13:49 -07:00
Tim van der Meij
a0ec980e63
Merge pull request #9055 from Snuffleupagus/core-js-Number
...
Replace `Number` polyfills with the ones from core-js
2017-10-21 16:15:11 +02:00
Jonas Jenwald
dbbb763eaf
Replace Number
polyfills with the ones from core-js
...
Since we're already using core-js elsewhere in `compatibility.js`, we can reduce the amount of code we need to maintain ourselves.
https://github.com/zloirock/core-js#ecmascript-6-number
2017-10-21 12:58:53 +02:00
Jonas Jenwald
8684aa0ee5
Replace our Promise
polyfill with the one from core-js
...
Since we're already using core-js elsewhere in `compatibility.js`, we can reduce the amount of code we need to maintain ourselves.
https://github.com/zloirock/core-js#ecmascript-6-promise
2017-10-21 12:51:14 +02:00
Tim van der Meij
10fd590c09
Merge pull request #9032 from Snuffleupagus/nativeImageDecoderSupport-2.0
...
Simplify the check, and remove the warning, for the `nativeImageDecoderSupport` API parameter
2017-10-20 21:30:47 +02:00
Brendan Dahl
fcc9943d04
Use charstring as plain text when lengthIV is -1.
...
Fixes #7769
2017-10-18 14:19:59 -07:00
Tim van der Meij
17cc94db4e
Merge pull request #9034 from Snuffleupagus/javascript-null
...
[api-major] Change `getJavaScript` to return `null`, rather than an empty Array, when no JavaScript exists
2017-10-17 21:58:45 +02:00
Tim van der Meij
7d7edd9cc6
[api-major] Remove the PDFJS_NEXT
option
...
Nothing uses this option anymore, so setting it is a no-op now. We can
safely remove it.
Use `SKIP_BABEL` (instead of `PDFJS_NEXT`) now if you want to skip Babel
translation for a build.
2017-10-16 23:16:51 +02:00
Jonas Jenwald
b5794bb26b
Simplify the check, and remove the warning, for the nativeImageDecoderSupport
API parameter
...
As discussed in PR 8982.
2017-10-16 09:11:39 +02:00
Jonas Jenwald
bcb29063c1
Polyfill Object.values
and Array.prototype.includes
using core-js
...
See https://github.com/zloirock/core-js#stage-4-proposals .
2017-10-16 09:11:39 +02:00
Jonas Jenwald
1cd1582cb9
[api-major] Change getJavaScript
to return null
, rather than an empty Array, when no JavaScript exists
...
Other API methods already return `null`, rather than empty Arrays/Objects, hence it makes sense to change `getJavaScript` to be consistent.
2017-10-15 22:17:14 +02:00
Tim van der Meij
815bc53a16
Merge pull request #9029 from Snuffleupagus/eslint--report-unused-disable-directives
...
Enable the `--report-unused-disable-directives` ESLint command line option
2017-10-15 15:12:20 +02:00
Jonas Jenwald
04b46831c1
Enable the --report-unused-disable-directives
ESLint command line option
...
This option was added in [version `4.8.0` of ESLint](https://github.com/eslint/eslint/releases/tag/v4.8.0 ), which is already listed as the minimum version in our `package.json` file; please refer to https://eslint.org/docs/user-guide/command-line-interface#--report-unused-disable-directives for additional details.
Despite the caveat listed in the link above, I still think that using this option makes sense since it will help ensure that no longer necessary disable statements are removed.
2017-10-15 13:45:12 +02:00
Jonas Jenwald
0f90d5130c
[api-major] Remove all remaining deprecated
functions/methods
2017-10-15 13:27:10 +02:00
Jonas Jenwald
2f32131601
Replace our WeakMap
polyfill with the one from core-js
...
Since we're already using core-js elsewhere in `compatibility.js`, we can reduce the amount of code we need to maintain ourselves.
https://github.com/zloirock/core-js#weakmap
2017-10-15 10:22:06 +02:00
Diego Casorran
11b1daa72d
Mispelled isEvalSupported property at FontFaceObject() creation.
2017-10-07 20:05:21 +02:00
Tim van der Meij
509d3728f1
Merge pull request #8922 from Snuffleupagus/paintXObject-errors
...
Allow `getOperatorList`/`getTextContent` to skip errors when parsing broken XObjects (issue 8702, issue 8704)
2017-10-07 15:46:26 +02:00
Yury Delendik
fab59e0f91
Revert "Closes all promises/streams when handler is destroyed."
2017-10-06 11:55:28 -05:00
Jonas Jenwald
3d79bd5e87
[api-major] When rendering is cancelled, always reject with RenderingCancelledException
2017-10-04 18:09:28 +02:00
Tim van der Meij
ee9b5a12da
Remove the deprecated parameters for getDocument
of the API
...
This is deprecated since October 2015 with a visible message, so we can
safely remove this now.
2017-10-02 23:05:32 +02:00
Tim van der Meij
0817375d2f
Remove the deprecated disableNativeImageDecoder
parameter of the API
...
This is deprecated since May 2017 with a visible message, so we can
safely remove this now.
2017-10-02 23:01:57 +02:00
Tim van der Meij
b651cfb440
Remove the deprecated UnsupportedManager
class of the API
...
This is deprecated since November 2015 with a visible message, so we
can safely remove this now.
2017-10-02 22:54:22 +02:00
Tim van der Meij
918bd98a2f
Remove the deprecated destroy
method of the API
...
This is deprecated since October 2015 with a visible message, so we can
safely remove this now.
2017-10-02 22:54:15 +02:00
Tim van der Meij
9b353ef407
Remove the deprecated parameter handling in the render
method of the API
...
This is deprecated since January 2015 with a visible message, so we can
safely remove this now.
2017-10-02 22:54:01 +02:00
Jonas Jenwald
5b67c7594c
Remove the unused Util.sign
function from src/shared/util.js
...
This has been completely unused since commit 10bb6c9ec0
, in PR 2505, more than four and a half years ago.
2017-10-01 15:58:03 +02:00
Jonas Jenwald
65352c730f
Remove the unused isWorker
property from src/display/global.js
...
This has been completely unused since commit 1d12aed5ca
, in PR 7126, almost one and a half years ago.
2017-10-01 15:49:55 +02:00
Brendan Dahl
d03e127434
Merge pull request #8971 from yurydelendik/close-handler
...
Closes all promises/streams when handler is destroyed.
2017-09-29 14:28:53 -07:00
Jonas Jenwald
b1472cddbb
Allow getOperatorList
/getTextContent
to skip errors when parsing broken XObjects (issue 8702, issue 8704)
...
This patch makes use of the existing `ignoreErrors` property in `src/core/evaluator.js`, see PRs 8240 and 8441, thus allowing us to attempt to recovery as much as possible of a page even when it contains broken XObjects.
Fixes 8702.
Fixes 8704.
2017-09-29 17:14:21 +02:00
Jonas Jenwald
b8ec518a1e
Split the existing PDFFunction
in two classes, a private PDFFunction
and a public PDFFunctionFactory
, and utilize the latter in
PDFDocument to allow various code to access the methods of
PDFFunction`
...
*Follow-up to PR 8909.*
This requires us to pass around `pdfFunctionFactory` to quite a lot of existing code, however I don't see another way of handling this while still guaranteeing that we can access `PDFFunction` as freely as in the old code.
Please note that the patch passes all tests locally (unit, font, reference), and I *very* much hope that we have sufficient test-coverage for the code in question to catch any typos/mistakes in the re-factoring.
2017-09-29 15:30:53 +02:00
Jonas Jenwald
5c961c76bb
Remove the unused inline
parameter from various methods/functions in PDFImage
, and change a couple of methods to use Objects rather than plain parameters
...
The `inline` parameter is passed to a number of methods/functions in `PDFImage`, despite not actually being used. Its value is never checked, nor is it ever assigned to the current `PDFImage` instance (i.e. no `this.inline = inline` exists).
Looking briefly at the history of this code, I was also unable to find a point in time where `inline` was being used.
As far as I'm concerned, `inline` does nothing more than add clutter to already very unwieldy method/function signatures, hence why I'm proposing that we just remove it.
To further simplify call-sites using `PDFImage`/`NativeImageDecoder`, a number of methods/functions are changed to take Objects rather than a bunch of (somewhat) randomly ordered parameters.
2017-09-29 15:30:40 +02:00
Yury Delendik
71b0e4e818
Closes all promises/streams when handler is destroyed.
2017-09-28 16:45:04 -05:00
Jonas Jenwald
a159c4f357
Check that this.baseUrl
is defined before attempting to fetch any data in DOMCMapReaderFactory
/NodeCMapReaderFactory
2017-09-28 12:34:57 +02:00
Jonas Jenwald
7d3efe43a2
Ensure that the same exact version of PDF.js is used in both the API and the Worker
...
I don't have a good example at hand right know, but I recall seeing custom deployments of PDF.js that bundle a *specific* version of the `build/pdf.js` file and then set `PDFJS.workerSrc` to point to https://mozilla.github.io/pdf.js/build/pdf.worker.js .
That practice seems really bad since, besides (obviously) causing unnecessary server load, it will very quickly result in a version mismatch between the `pdf.js` and `pdf.worker.js` files in those PDF.js deployments.
Such a version mismatch could easily lead to either breaking errors, or even worse slightly inconsistent behaviour for an API call (if the API -> Worker interface changes, which does happen from time to time).
To avoid the problems described above, I'm thus proposing that we enforce that the versions of the `pdf.js` and `pdf.worker.js` files must always match.
2017-09-27 15:41:57 +02:00
Brendan Dahl
18e2321845
Overwrite maxSizeOfInstructions in maxp with computed value.
...
In issue #7507 the value is less than the actuall max size
of the glyph instructions causing OTS to fail the font.
2017-09-25 17:53:26 -07:00
Jonas Jenwald
10727572a2
Merge pull request #8950 from timvandermeij/polygon-polyline-annotations
...
Implement support for polyline and polygon annotations
2017-09-24 15:16:14 +02:00
Tim van der Meij
c69a7a83da
Merge pull request #8932 from janpe2/jbig2-sym-offset
...
JBIG2 symbol offsets
2017-09-23 17:11:45 +02:00
Tim van der Meij
8ccad276b2
Implement support for polygon annotations
2017-09-23 16:52:47 +02:00