Yury Delendik
63d5aae3f6
Groups path commands into single command
2014-04-30 09:09:04 -05:00
Jonas Jenwald
0fa154be4e
Amend GlyphMapForStandardFonts to fix issue 4276
2014-04-30 15:56:40 +02:00
Jonas Jenwald
747dec16b2
Prevent trying to map characters to the specials unicode block in adjustMapping (issue 4650)
2014-04-28 23:33:54 +02:00
Yury Delendik
58f697f977
Merge pull request #4528 from bthorben/lessColorConversion
...
Less color conversion
2014-04-28 08:28:33 -05:00
Yury Delendik
98e023e464
Guesses Type1C font type based on file content
2014-04-24 11:48:18 -05:00
Thorben Bochenek
e8f0700bfa
Move the colour conversion to jpg.js
...
Benchmarking shows that this improves performance for the invitation document
from https://github.com/mozilla/pdf.js/issues/3809 by 35%
2014-04-24 15:07:12 +02:00
Thorben Bochenek
e7fe45a5c4
Refactor jpg.js and include forceRGBoutput, correct style of image.js
...
This refactors getData to be more readable and extracts all the color
conversion algorithms to their own functions. The resulting code was then
cleaned up.
This also introduces a flag `forceRGBoutput` to getData, that allows to always
get the data as a `width * height * 3` bytes long RGB buffer
2014-04-24 12:55:37 +02:00
p01
8f9bd33a57
PDFImage_resize: copy in place with alpha and ~5x speed up
2014-04-23 17:27:02 +02:00
p01
a66326cc54
Optimized JPX decoder ~6% faster
2014-04-22 15:34:26 +02:00
fkaelberer
11f565547c
Fix corrupted images #4649
2014-04-19 19:34:42 +02:00
Samuel Chantaraud
25ee0e8572
Preliminary attachments support
...
Added a partial Filespec support
Added getAttachments in API
Added a new attachments view in UI (with a new icon by @shorlander)
2014-04-18 12:11:00 -04:00
Yury Delendik
9a5c121e4d
Fixes invalid CFF name for Mac OSX
2014-04-17 10:50:06 -05:00
Yury Delendik
a22258a6b3
Merge pull request #4638 from yurydelendik/issue4630
...
Recognizes ASCII type1 encoding
2014-04-17 08:39:31 -05:00
Yury Delendik
558c159e3d
Merge pull request #4637 from fkaelberer/issue3483
...
Fix #3483 and simplify readCodingpasses()
2014-04-17 08:29:59 -05:00
Yury Delendik
bf3a2488df
Recognizes ascii type1 encoding
2014-04-17 07:52:33 -05:00
fkaelberer
f52dfe4c81
Fix #3483 and simplify readCodingpasses()
2014-04-16 21:40:37 +02:00
fkaelberer
b06c10cbbd
rename getUint32 to getInt32 and collect readInt*() in util.js
2014-04-16 21:31:16 +02:00
Yury Delendik
a468f7215d
Fixes spacing in the text layer builder
2014-04-16 11:14:57 -05:00
fkaelberer
04602c8a5e
Less copying in the JPX coder, merged and rebased
2014-04-16 10:40:04 +02:00
Rob Wu
2e97c0d085
Remove some unused variables from src/
...
Only obviously useless, local variables have been removed.
2014-04-15 17:10:23 +02:00
Yury Delendik
f954cde8f4
Merge pull request #4581 from Snuffleupagus/issue-4575
...
Check that images have valid dimensions (issue 4575)
2014-04-14 15:23:44 -05:00
Yury Delendik
eb8924a79f
Merge pull request #4613 from yurydelendik/buildImagePromise
...
Refactors buildImage to use Promise; don't draw bad images
2014-04-14 15:23:06 -05:00
Yury Delendik
a00f854848
Refactors buildImage to use Promise; don't draw bad images
2014-04-14 15:22:35 -05:00
Joshua T Kalis
5828b2c687
Refactor - remove redundant function and all references
...
The function `assertWllFormed` was doing nothing different than `assert` which is
available in the same namespace. Removing it will lighten the filesize - albeit
very slightly - and reduce complexity.
2014-04-13 16:18:07 -04:00
Yury Delendik
bb739c011e
Merge pull request #4606 from timvandermeij/xrefentry
...
Makes PDF files load when xrefEntry is undefined
2014-04-12 19:37:14 -05:00
Yury Delendik
65fa25ca36
Fixes number of glyphs in the generated font
2014-04-12 13:25:13 -05:00
Tim van der Meij
dd3df20a88
Makes PDF files load when xrefEntry is undefined
2014-04-12 12:05:12 +02:00
Brendan Dahl
b242826d29
Fix seac regression.
2014-04-11 09:55:39 -07:00
Yury Delendik
88c1747cc3
Heuristics to recognize the unknown glyphs for toUnicode
2014-04-10 19:21:09 -05:00
Tim van der Meij
f463f96f35
Resolving new lint issues
2014-04-11 00:41:18 +02:00
Tim van der Meij
df91acf239
Fixes lint warning W004 in src/core
2014-04-11 00:41:08 +02:00
Yury Delendik
791c9a7b13
Relaxes murmurhash array requirement.
2014-04-10 07:55:08 -05:00
Brendan Dahl
5bd8a83c9b
Build the text layer geometry on the worker.
2014-04-09 16:44:07 -07:00
Yury Delendik
af536353d5
Merge pull request #4568 from p01/JPX_optimization
...
Jpx optimization
2014-04-09 17:25:11 -05:00
Yury Delendik
9ccdbbcb55
Merge pull request #4574 from Snuffleupagus/bug-850854
...
Handle 'space' character correctly in WinAnsiEncoding (bug 850854)
2014-04-09 14:36:49 -05:00
Brendan Dahl
a6e5f31ca1
Merge pull request #4423 from chriskr/font-aliases
...
Treat fonts with the same font descriptor and encoding as aliases
2014-04-09 10:26:09 -07:00
Yury Delendik
7a321dbf7e
Merge pull request #4569 from Snuffleupagus/bug-878026
...
Handle 'space' character correctly in MacRomanEncoding (bug 878026)
2014-04-09 10:44:10 -05:00
p01
b77e647f4f
JPX decoder 20-25% speed optimization
2014-04-09 16:58:40 +02:00
Jonas Jenwald
3a9b5b3951
Check that images have valid dimensions (issue 4575)
2014-04-09 13:04:27 +02:00
Jonas Jenwald
811f1b1d05
Workaround for cases where FontName in the FontDescriptor differs from BaseFont in the Font (bug 847420)
2014-04-09 11:29:33 +02:00
Christian Krebs
79f34b183c
Treat fonts with the same font descriptor, encoding and unicode map as aliases
...
Different fonts can point to the same font descriptor
(see https://github.com/mozilla/pdf.js/issues/4339 for details). With this
commit such fonts are treated as aliases if they have also the same encoding
and the same toUnicode map. The according info is stored on the font descriptor.
This change must also ensure that aliases use always the same font name
because translated fonts can get cleared depending on the CLEANUP_TIMEOUT setting.
2014-04-08 20:45:21 +02:00
Brendan Dahl
608c6cea5a
Merge pull request #4374 from yurydelendik/dictgetall
...
Doesn't traverse cyclic references in Dict.getAll; reduces empty-Dict GC
2014-04-08 10:43:42 -07:00
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
1e8d70af98
Prescales shading pattern packed data indices
2014-04-03 08:34:20 -05:00
fkaelberer
c978c026fa
clean up string conversion functions
2014-03-27 13:01:43 +01:00
Yury Delendik
31f081ae17
Doesn't traverse cyclic references in Dict.getAll; reduces empty-Dict garbage
2014-03-26 09:07:38 -05: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
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
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