Commit Graph

64 Commits

Author SHA1 Message Date
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
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
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
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
Yury Delendik
69efd9cb96 CMaps binary packing 2014-03-14 16:46:35 -05:00
Nicholas Nethercote
3759c11f42 Avoid more allocations in bidi(). 2014-03-13 22:15:09 -07: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
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
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
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
Nicholas Nethercote
00c1cff405 Transfer image masks when when possible, instead of copying. 2014-03-08 04:25:00 -08:00
Samuel Chantaraud
076b3433b4 Improved annotations' display/behavior.
Added an "InteractiveAnnotation" class to homogenize the annotations' structure (highlighting) and user interactions (for now, used for text and link annotations).

Text annotations:
The appearance (AP) has priority over the icon (Name).
The popup extends horizontally (up to a limit) as well as vertically.
Reduced the title's font size.
The annotation's color (C) is used to color the popup's background.
On top of the mouseover show/hide behavior, a click on the icon will lock the annotation open (for mobile purposes). It can be closed with another click on either the icon or the popup.

An annotation printing is conditioned by its "print" bit
Unsupported annotations are not displayed at all.
2014-03-07 10:48:42 -04:00
Yury Delendik
9a918572dd Merge pull request #4336 from nnethercote/rgb24
Special-case 24-bit RGB image-handling
2014-03-02 19:53:42 -06:00
Yury Delendik
ad4eb9a21d Merge pull request #4354 from nnethercote/Name-cache
Use a cache to minimize the number of Name objects.
2014-03-02 18:44:29 -06:00
Mitar
2c82e720b8 Updated to current latest stable version of jshint. 2014-03-01 13:31:25 -08:00
Brendan Dahl
a77efa0587 Remove unused calculation from bad merge. 2014-02-28 09:58:07 -08:00
Nicholas Nethercote
fdb7c218da Use a cache to minimize the number of Name objects. 2014-02-27 20:41:03 -08:00
Nicholas Nethercote
42cbb5b440 Introduce ImageKind constants. 2014-02-25 15:18:04 -08:00
Nicholas Nethercote
f62c1c469f Special-case 24-bit RGB image-handling. 2014-02-25 15:14:04 -08:00
Nicholas Nethercote
d4e8b41639 Remove some unnecessary local variables. 2014-02-24 18:25:59 -08:00
Brendan Dahl
b5b94a4af3 Use built in CMaps and unify the glyph mapping. 2014-02-11 10:27:09 -08:00
Brendan Dahl
cda181f061 Merge pull request #4187 from Rob--W/issue-4183
Use forEach instead of for-in (was: Replace [] with {} in core/cmap)
2014-01-29 10:54:49 -08:00
Yury Delendik
c5a804c43a Merge pull request #4181 from nnethercote/compact-images
Reduce memory consumption of simple black and white images.
2014-01-28 15:53:46 -08:00
Nicholas Nethercote
a966909754 Reduce memory consumption of simple black and white images. 2014-01-28 14:36:47 -08:00
Yury Delendik
bf432a37bb Refactors shared/pattern.js into core/ and display/ 2014-01-25 12:18:22 -06:00
Rob Wu
2779bab03e Use [].forEach instead of for-..-in in evaluator
To prevent errors whenever the array's prototype is extended.
 (cmap is an array)
2014-01-25 18:04:33 +01:00
Tim van der Meij
3c6ac0dad5 Merge pull request #4161 from yurydelendik/smask
SMask emulation
2014-01-23 11:49:19 -08:00
Yury Delendik
4054b0c385 SMask emulation 2014-01-23 11:13:32 -06:00
Brendan Dahl
f18e3e9e0f Merge pull request #4144 from yurydelendik/api-doc
Misc fixes for the API docs
2014-01-21 11:31:16 -08:00
Jonas Jenwald
575bdd8863 Fix loading of fonts with invalid encoding name entry (bug 859204 and 878112) 2014-01-21 02:03:28 +01:00
Yury Delendik
96fff4cc74 Refactors getTextContent return value 2014-01-17 13:26:00 -06:00
Yury Delendik
09f8f951c8 Extracts evaluator preprocessor and refactor text extraction 2014-01-17 07:16:52 -06:00
Brendan Dahl
455265474a Merge pull request #4093 from yurydelendik/issue4068
Fixes fips regression from #4068
2014-01-16 13:45:10 -08:00
Brendan Dahl
ff66c23e6e Merge pull request #4089 from yurydelendik/issue3725
Takes ascent/descent in account in the text layer
2014-01-16 13:12:04 -08:00
Nicholas Nethercote
3f533a1cb0 Use a more compact typed array to pass the image mask from the worker to the main thread. 2014-01-13 20:09:05 -06:00
Yury Delendik
96eaa15578 Fixes fips regression from #4068 2014-01-08 16:33:22 -06:00
Yury Delendik
0131101275 Takes ascent/descent in account in the text layer 2014-01-08 13:50:52 -06:00
Brendan Dahl
bac4133f21 Merge pull request #4068 from yurydelendik/bug864847
Adjusts heuristic for disabling Symbol encoding
2014-01-08 10:48:18 -08:00
Yury Delendik
5bf3e44e30 Introduces LegacyPromise; polyfills DOM Promise 2014-01-03 18:17:05 -06:00
Brendan Dahl
2228343f77 Only trigger warning bar on certain unsupported features. 2014-01-03 09:34:13 -08:00
Yury Delendik
5973d40afe Adjusts heuristic for disabling Symbol encoding 2014-01-02 18:44:11 -06:00