Jonas Jenwald
9e6c66be12
Handle 'space' character correctly in WinAnsiEncoding (bug 850854)
2014-04-08 13:07:29 +02:00
Brendan Dahl
ed1f8c33bd
Merge pull request #4286 from yurydelendik/webgl
...
WebGL and misc memory optimizations
2014-04-07 14:33:34 -07:00
Jonas Jenwald
8fc4ebd5cb
Handle 'space' character correctly in MacRomanEncoding (bug 878026)
2014-04-07 20:59:26 +02:00
fkaelberer
2982de8f33
Use Stream instead of byte array access
2014-04-06 13:40:27 +02:00
fkaelberer
1ccc8a64b7
Read color info from JPX stream
...
Fix colors problem #4540 + minor cleanup
fix lint warnings
2014-04-05 18:02:58 +02:00
Yury Delendik
f57c6935d7
Implements WebGL support
2014-04-03 08:36:22 -05:00
Yury Delendik
944219ad8a
Balance smask process chunking
2014-04-03 08:34:21 -05:00
Yury Delendik
1e8d70af98
Prescales shading pattern packed data indices
2014-04-03 08:34:20 -05:00
Yury Delendik
5262e6f84f
Set max size for the group
2014-04-03 08:34:20 -05:00
Yury Delendik
34f0f0962f
Merge pull request #4539 from Snuffleupagus/issue-4537
...
Workaround for missing 'Rect' entry in annotation dictionaries (issue 4537)
2014-04-02 08:05:52 -05:00
Yury Delendik
20f6dedea7
Merge pull request #4512 from fkaelberer/cleanUpStringConversion
...
Clean up duplicate string conversion functions
2014-04-02 08:04:06 -05:00
Yury Delendik
dc0e60d103
Merge pull request #4535 from Snuffleupagus/issue-4484
...
Avoid drawing text when the font size is zero (issue 4484)
2014-04-02 07:23:43 -05:00
Yury Delendik
b97127aca2
Merge pull request #4542 from fkaelberer/typoInSpliceString
...
Fix typo/unused argument in fontloader.js->spliceString()
2014-03-31 09:37:26 -05:00
fkaelberer
4ee35b0d46
Fix typo/unused argument in fontloader.js->spliceString()
2014-03-31 14:48:23 +02:00
Jonas Jenwald
772df5e0cb
Workaround for missing 'Rect' entry in annotation dictionaries (issue 4537)
2014-03-31 12:07:54 +02:00
Jonas Jenwald
08eb9a960a
Avoid drawing text when the font size is zero (issue 4484)
2014-03-30 13:36:21 +02:00
fkaelberer
c978c026fa
clean up string conversion functions
2014-03-27 13:01:43 +01:00
Jonas Jenwald
7e7b728b5d
Assign non-zero width/height to all rectangles (issue 4260)
2014-03-26 22:29:04 +01:00
Yury Delendik
1d0286f6a1
Update util.js
...
Fixes comments for preprocessor
2014-03-26 13:19:10 -05:00
Yury Delendik
e80c6a8a75
Merge pull request #4466 from p01/Faster_1BPP_image_drawing
...
Faster 1 bpp image drawing
2014-03-26 10:32:05 -05:00
Yury Delendik
31f081ae17
Doesn't traverse cyclic references in Dict.getAll; reduces empty-Dict garbage
2014-03-26 09:07:38 -05:00
p01
4e6ebf2de0
Optimized putBinaryImageData for GRAYSCALE_1BPP
...
The following changes make putBinaryImageData 2.2x faster.
* Use a Uint32Array to draw whole pixels instead component by component
* Unroll the inner most loop
* Added lazy PDFJS.hasCanvasTypedArrays, PDFJS.isLittleEndian and compatibility
Uint32ArrayView for browsers using the old CanvasPixelArray
2014-03-26 14:05:59 +01:00
Manas (prometheansacrifice)
3025445cbe
Fix for #3181 : jbig2 encoding for number of instances greater than 1
2014-03-24 11:05:07 +05:30
Jonas Jenwald
e3b830e63c
Merge pull request #4505 from timvandermeij/evaluator-syntax
...
Making src/core/evaluator.js adhere to the style guide
2014-03-23 12:22:09 +01:00
Jonas Jenwald
6883362a84
Fix coding style in src/core/stream.js
2014-03-22 21:21:01 +01:00
Jonas Jenwald
67b5c8868c
Fix coding style in src/core/worker.js
2014-03-22 20:59:16 +01:00
Jonas Jenwald
75de115938
Fix coding style in src/core/font_renderer.js
2014-03-22 20:49:47 +01:00
Jonas Jenwald
131a16b65e
Fix coding style in src/core/core.js
2014-03-22 20:49:46 +01:00
Jonas Jenwald
53bbdcb0a1
Fix coding style in src/core/chunked_stream.js
2014-03-22 20:49:46 +01:00
Tim van der Meij
c6a06c0f16
Making src/core/evaluator.js adhere to the style guide
2014-03-22 19:15:51 +01:00
Jonas Jenwald
66e243f506
Fix coding style in src/core/fonts.js
2014-03-22 16:19:07 +01:00
Brendan Dahl
1416eca164
Merge pull request #4493 from yurydelendik/issue4491
...
Fixes ignoring of the escaped CR LF
2014-03-20 14:57:24 -07:00
Tim van der Meij
284288f1d0
Making src/core/{image,obj,parser}.js adhere to the style guide
2014-03-20 20:28:22 +01:00
Yury Delendik
20a91bcdbf
Fixes ignoring of the escaped CR LF
2014-03-20 11:50:12 -05:00
Yury Delendik
878a123e47
Merge pull request #4478 from nnethercote/plain-fnArray
...
Use a vanilla array for fnArray
2014-03-20 10:30:29 -05:00
Brendan Dahl
10deadd416
Merge pull request #4453 from nnethercote/charToGlyph
...
Add a cache for glyphs
2014-03-19 16:30:02 -07:00
Yury Delendik
1801fb2c37
Merge pull request #4474 from chriskr/draw-image-subpixel-support
...
Introduce paintSolidColorImageMask command to handle 1x1 solid image
2014-03-19 14:31:15 -05:00
Yury Delendik
305274cd45
Merge pull request #4481 from bthorben/refactor/pdf_manager.js
...
refactor src/core/pdf_manager.js: rename pdfModel to pdfDocument
2014-03-19 10:33:42 -05:00
Christian Krebs
fc9edfcf76
Introduce paintSolidColorImageMask command to handle 1x1 solid image masks
...
See https://github.com/mozilla/pdf.js/issues/4436 for details
2014-03-19 13:27:59 +01:00
Thorben Bochenek
0fa44d7233
refactor src/core/pdf_manager.js: rename pdfModel to pdfDocument
...
Rename pdfModel to pdfDocument to let the name closer resemble what the
variable actually holds
2014-03-19 09:43:16 +01:00
Yury Delendik
329d0ec30b
Merge pull request #4464 from bthorben/issue#4461
...
Fixes pages without Resources in their dictionary
2014-03-18 13:00:21 -05:00
Thorben Bochenek
8edebc797b
Refactor and fix style of core.js
2014-03-18 14:10:44 +01:00
Thorben Bochenek
1ddb019449
Fix Issue #4461 : Pages without \Resources in their dictionary fail to load
...
When no "\Resource" entry could be found return an empty dictionary
2014-03-18 14:10:44 +01:00
Nicholas Nethercote
292b96a0bf
Make fnArray always be a plain array.
...
This makes the code much simpler, and the extra memory use is tiny -- a vanilla
1000 element array is only 4000 bytes larger than a Uint32Array of the same
size.
2014-03-17 17:48:53 -07:00
Nicholas Nethercote
42d175efd4
Fix some indenting within OperatorList.
2014-03-17 17:11:40 -07:00
Brendan Dahl
1802ffffb8
Merge pull request #4447 from nnethercote/object-reduction
...
Allocate fewer objects
2014-03-17 12:50:23 -07:00
Brendan Dahl
68be273c69
Merge pull request #4470 from yurydelendik/packcmap
...
CMaps binary packing
2014-03-17 12:27:35 -07:00
Brendan Dahl
ad4be03a08
Merge pull request #4440 from bthorben/refactor/pdf_manager.js
...
refactor src/core/pdf_manager.js: rename pdfModel to pdfDocument
2014-03-17 10:41:17 -07:00
Jonas Jenwald
5f021b067c
Prevent infinite loop in CFFParser_parseHeader
2014-03-17 11:47:14 +01:00
Brendan Dahl
1a6e103c35
Merge pull request #4463 from sukop/patch-1
...
Fix copy-paste typo
2014-03-14 15:24:16 -07:00
Yury Delendik
69efd9cb96
CMaps binary packing
2014-03-14 16:46:35 -05:00
Tim van der Meij
67c686027c
Merge pull request #4465 from Snuffleupagus/src-display-braces
...
Fix coding style in src/display
2014-03-14 21:11:15 +01:00
Yury Delendik
8266225b73
Merge pull request #4434 from p01/jbig2Optimizations
...
Jbig2 optimizations
2014-03-14 10:39:41 -05:00
Juraj Sukop
4c2a462a76
Fix copy-paste typo
...
The Compact Font Format Specification defines the Standard String of SID 237 as "twodotenleader", and not "266 ff".
2014-03-14 14:11:16 +01:00
Jonas Jenwald
a1ee567d60
Fix coding style in src/display/api.js
2014-03-14 13:24:04 +01:00
Jonas Jenwald
bc986a3029
Fix coding style in src/display/canvas.js
2014-03-14 13:11:11 +01:00
Nicholas Nethercote
6c698519cd
Avoid allocations in executeCommand().
2014-03-13 22:15:09 -07:00
Nicholas Nethercote
3759c11f42
Avoid more allocations in bidi().
2014-03-13 22:15:09 -07:00
Nicholas Nethercote
2e93a0cc98
Avoid allocations in bidi().
2014-03-13 22:15:09 -07:00
Nicholas Nethercote
6a75e45309
Allocate fewer objects when parsing 2 and 4 byte chunks.
...
This is achieved by adding getBytes2() and getBytes4() to streams, and by
changing int16() and int32() to take multiple scalar args instead of an array
arg.
2014-03-13 22:15:05 -07:00
Nicholas Nethercote
0866ad5bff
Add a cache for glyphs.
...
This reduces memory consumption for text heavy documents. I tested five
documents and saw hit rates ranging from 97.4% to 99.8% (most of the misses are
due to |width| varying even when |fontChar| matches). On two of those documents
I saw improvements of 40 and 50 MiB.
The patch also introduces the Glyph constructor, and renames the |unicodeChars|
local variable as |unicode| for consistency with the corresponding Glyph
property.
2014-03-13 19:51:48 -07:00
p01
bd9419f1ef
Micro optimization of ArithmeticDecoder_readBit
2014-03-13 17:38:12 +01:00
p01
2b6cb317db
Optmized decodeRefinement, moving the prediction error outside the inner loop
...
There is no need to slow down the inner loop with a test for ltp as it can only
change if prediction is true in which case it only changes in the outer loop.
2014-03-13 17:38:12 +01:00
p01
840d9d40b6
Reuse the row Uint8Array in JBIG2's decodeBitmap
2014-03-13 17:38:11 +01:00
p01
b2b3836683
Process only once the offset and starting mask JBIG2's drawBitmap
2014-03-13 17:38:11 +01:00
p01
0bca56cbb2
Use changingTemplateX, Y and Bit in JBIG2's decodeBitmap
2014-03-13 17:38:01 +01:00
p01
e2a4328ff2
Optimized bounding box tests in JBIG2's decodeBitmap
2014-03-13 17:38:00 +01:00
p01
2a9fe573c0
Nest JBIG2 prediction if statements together
...
ltp can only become truthy if predition is true.
2014-03-13 17:37:59 +01:00
p01
02a5f9435a
More bit friendly decodeIAID and decodeInteger
2014-03-13 17:37:55 +01:00
p01
e862c64bb8
JBIG2 20% faster SimpleSegmentVisitor_drawBitmap
...
Moved the switch(combinationOperator) outside the width and height loops
Check bitmap[i][j] before applying the switch(combinationOperator)
2014-03-13 17:37:53 +01:00
Yury Delendik
1aaeec8020
Heuristic to optimize chunking
2014-03-13 11:01:34 -05:00
Yury Delendik
257898b359
Caching inlined mask images
2014-03-13 11:01:34 -05:00
Yury Delendik
f48f57e30a
Caches last parsed resource image, recornizes image repeats
2014-03-13 11:00:10 -05:00
Yury Delendik
2c23be369b
Optimizing pdf when text printed char-by-char
2014-03-13 11:00:10 -05:00
Yury Delendik
dbb3d17d8f
Refactors optimization list
2014-03-13 11:00:10 -05:00
Yury Delendik
1c0e1cc591
Merge pull request #4444 from nnethercote/min-length
...
Estimate the size of decoded streams in advance.
2014-03-13 10:58:31 -05:00
Yury Delendik
2778d75d2c
Merge pull request #4437 from yurydelendik/issue4398
...
Fixes corrupted by Aspose fonts
2014-03-13 10:44:02 -05:00
Yury Delendik
03bedaa316
Merge branch 'master' of github.com:mozilla/pdf.js into issue-4370
2014-03-13 10:38:11 -05:00
Jonas Jenwald
b0824e1626
Prevent circular reference when checking for blend modes (issue 4370)
2014-03-13 10:36:49 -05:00
Yury Delendik
7963f22545
Merge pull request #4259 from brendandahl/built-in-cmaps-squash
...
Adds built in CMaps and unifies the glyph mapping.
2014-03-13 10:27:48 -05:00
Yury Delendik
31ea4e0f4d
Merge pull request #4420 from prometheansacrifice/RemovingCheckSetPresence
...
Removing set-presence-in-ImageData check from canvas.js
2014-03-13 08:31:53 -05:00
Yury Delendik
5c20d17c87
Merge pull request #4431 from fkaelberer/ExtractArithmeticDecoder
...
Extract arithmetic decoder to own file
2014-03-13 08:19:11 -05:00
Nicholas Nethercote
b3024db677
Estimate the size of decoded streams in advance.
...
When decoding a stream, the decode buffer is often grown multiple times, its
byte size increasing like so: 512, 1024, 2048, etc. This patch estimates the
minimum size in advance (using the length of the encoded stream), often
allowing the smaller sizes to be skipped. It also renames numerous |length|
variables as |maybeLength| to make it clear that they can be |null|.
I measured this change on eight documents. This change reduces the cumulative
size of decode buffer allocations by 0--32%, with 10--20% being typical. This
reduces peak RSS by 10 or 20 MiB for several of them.
2014-03-13 02:06:58 -07:00
Ben Browitt
8b6aeee35c
Follow JMPR op only if outside of FDEF and IF
2014-03-13 03:19:04 +02:00
Thorben Bochenek
baccf3d160
refactor src/core/pdf_manager.js: rename pdfModel to pdfDocument
...
Rename pdfModel to pdfDocument to let the name closer resemble what the
variable actually holds
2014-03-12 09:54:29 +01:00
Nicholas Nethercote
ea17749b93
Don't get bytes eagerly when creating FlateStream objects.
2014-03-11 16:03:15 -07:00
Nicholas Nethercote
d0253c8291
Don't get bytes eagerly when creating {Jpeg,Jpx,Jbig2}Stream objects.
...
This avoids lots of unnecessary work when such streams are referred to via
fetch(), and so their bytes aren't subsequently read. This is a large
performance win on some files.
2014-03-11 16:03:15 -07:00
Nicholas Nethercote
f12d588258
Add an ensureRange() call to ChunkedStream_makeSubStream().
...
By checking if the data is all present before making a substream, we avoid
cases where we parse part of a stream and then throw a MissingDataException
part-way through, which forces us to later re-read the stream -- possibly
multiple times. This is a sizeable performance win for some cases when file
loading is slow (e.g. over the web).
2014-03-11 16:03:06 -07:00
Yury Delendik
7dbd088728
Fixes corrupted by Aspose fonts.
2014-03-11 14:16:27 -05:00
fkaelberer
2c8b776687
update comments
2014-03-11 09:14:59 +01:00
Manas (prometheansacrifice)
30e00bc573
Removing set-presence-in-ImageData check from canvas.js
2014-03-11 08:48:37 +05:30
Brendan Dahl
57e896d29e
Merge pull request #4406 from nnethercote/fix-and-transfer-masks
...
Improve image mask handling again
2014-03-10 16:26:22 -07:00
Brendan Dahl
72a9c7810b
Merge pull request #4246 from pnml/hiresmask
...
Support for the image mask in higher resolution than the image itself
2014-03-10 10:34:49 -07:00
fkaelberer
7b5b5178ef
Extract duplicate arithmetic decoder to own class
2014-03-10 16:56:00 +01:00
Jonas Jenwald
b05f05589b
Merge pull request #4425 from timvandermeij/jpx-syntax
...
Making src/core/jpx.js adhere to the style guide
2014-03-10 15:28:05 +01:00
Jonas Jenwald
7480ba4cb1
Merge pull request #4422 from timvandermeij/jbig2-syntax
...
Making src/core/jbig2.js adhere to the style guide
2014-03-10 11:33:39 +01:00
Tim van der Meij
d5fcfe14d2
Making src/core/jpx.js adhere to the style guide
2014-03-09 22:31:55 +01:00
Tim van der Meij
2712a5a45a
Making src/core/jbig2.js adhere to the style guide
2014-03-09 13:03:45 +01:00
Tim van der Meij
f1249bd49e
Making src/display/font_loader.js adhere to the style guide
2014-03-09 12:45:51 +01:00
Tim van der Meij
7d86fa859f
Making src/display/metadat.js adhere to the style guide
2014-03-09 12:41:01 +01:00