Calixte Denizet
516aea5562
[XFA] Set default max value in occur tag to -1 (bug 1998843)
2025-11-21 17:53:38 +01:00
calixteman
c6b61a34e6
Merge pull request #20436 from calixteman/merge_struct_trees
...
Merge the structure trees coming from different pdfs (bug 1997379)
2025-11-17 20:10:06 +01:00
Calixte Denizet
e13a618df3
Merge the structure trees coming from different pdfs (bug 1997379)
2025-11-17 19:56:36 +01:00
Calixte Denizet
50c48cf11b
Add telemetry for tagged pdfs (bug 1997134)
2025-11-17 19:47:16 +01:00
calixteman
e7288dca8e
Merge pull request #20431 from calixteman/split_merge_p4
...
Add a wrapper for the new xref in order to be able to get some values from cloned dictionaries
2025-11-11 21:47:42 +01:00
Tim van der Meij
bc4d90711a
Merge pull request #20432 from calixteman/version
...
Version entry in the catalog has to be a name and not a string
2025-11-11 20:31:59 +01:00
Calixte Denizet
a98b0b1fb5
Version entry in the catalog has to be a name and not a string
2025-11-09 15:34:57 +01:00
Calixte Denizet
65881f0e21
Add a wrapper for the new xref in order to be able to get some values from cloned dictionaries
2025-11-09 15:28:43 +01:00
Calixte Denizet
37f4712f7e
Update the named page destinations when some pdf are combined (bug 1997379)
...
and remove link annotations pointing on a deleted page.
2025-11-07 18:22:19 +01:00
Calixte Denizet
ad97c5b816
Update the page labels tree when a pdf is extracted (bug 1997379)
2025-11-07 15:59:57 +01:00
calixteman
85ed401b82
Merge pull request #20409 from calixteman/split_merge_p1
...
Add the possibility to create a pdf from different ones (bug 1997379)
2025-11-07 15:05:52 +01:00
Calixte Denizet
bc87f4e8d6
Add the possibility to create a pdf from different ones (bug 1997379)
...
For now it's just possible to create a single pdf in selecting some pages in different pdf sources.
The merge is for now pretty basic (it's why it's still a WIP) none of these data are merged for now:
- the struct trees
- the page labels
- the outlines
- named destinations
For there are 2 new ref tests where some new pdfs are created: one with some extracted pages and an other
one (encrypted) which is just rewritten.
The ref images are generated from the original pdfs in selecting the page we want and the new images are
taken from the generated pdfs.
2025-11-07 14:57:48 +01:00
Calixte Denizet
04db38558a
Create the number tree for the ParentTree only one time
2025-11-05 17:49:55 +01:00
Tim van der Meij
6e7a6eb52b
Merge pull request #20408 from calixteman/fix_mml_encoding
...
Don't set the MathML namespace for attributes in MathML tags (bug 1997343)
2025-11-01 14:58:15 +01:00
Tim van der Meij
c696648826
Merge pull request #20404 from mozilla/revert-20031-telemetry_signature_certificate
...
Revert "Add some telemetry in order to know what are the certificates used in pdfs (bug 1973573)"
2025-11-01 14:55:07 +01:00
Calixte Denizet
6db23139be
Don't set the MathML namespace for attributes in MathML tags (bug 1997343)
...
And by default a XML file is UTF-8 encoded so correctly decode the embedded file.
2025-10-30 18:37:19 +01:00
Edoardo Cavazza
4c22b99df3
Collect all child nodes of lists and tables
2025-10-29 17:30:46 +01:00
calixteman
aeceee1df3
Revert "Add some telemetry in order to know what are the certificates used in pdfs (bug 1973573)"
2025-10-29 15:41:34 +01:00
Coelacanthus
6590063614
Add the font PT Astra Serif as a possible substitution for Times New Roman
...
Metric-compatible font with Times New Roman created by ParaType, based on
their serif font PT Serif, released under OFL-1.1 license.
https://www.paratype.com/fonts/pt/pt-astra-serif
Signed-off-by: Coelacanthus <uwu@coelacanthus.name>
2025-10-29 17:15:31 +08:00
calixteman
520363b350
Merge pull request #20384 from calixteman/bug1937438
...
Make MathML elements visible in the struct tree (bug 1937438)
2025-10-23 17:55:42 +02:00
Calixte Denizet
e5a62c8d06
Make MathML elements visible in the struct tree (bug 1937438)
...
It'll help to make math equations "visible" for screen readers.
MS Office has a specific way to add some MathML code to struc tree leaf
and this patch handles it.
2025-10-23 16:29:01 +02:00
calixteman
1a8689b9be
Merge pull request #20340 from Aditi-1400/serialize-pattern-ab
...
Serialize pattern data into ArrayBuffer
2025-10-22 11:05:22 +02:00
Calixte Denizet
199b3d04df
Fix stream use when getting the text (follow-up of #20373 )
2025-10-18 22:58:27 +02:00
Calixte Denizet
05f368056d
Use stream for whatever substrem in stream classes
...
and add a method in order to get the original stream.
When writing an existing stream it'll help to have the original one instead of the filtered one.
2025-10-17 22:26:05 +02:00
Calixte Denizet
bb2a1126e6
Use a binary format for the glyph paths
...
We used a SVG string which can be pass to the Path2D ctor but it's a bit slower than
building the path step by step.
Having numerical data instead of a string will help the font data serialization.
2025-10-16 15:52:51 +02:00
Calixte Denizet
aab521327b
Very slightly improve intersector performance
...
It just avoid useless computations.
2025-10-13 14:55:44 +02:00
Aditi
fa631806bf
Serialize pattern data into ArrayBuffer
...
Follow up on https://github.com/mozilla/pdf.js/pull/20197 ,
This serializes pattern data into an ArrayBuffer which is
then transferred from the worker to the main thread.
It sets up the stage for us to eventually switch to a
SharedArrayBuffer in the future.
2025-10-11 01:58:07 +05:30
calixteman
30fdf16071
Merge pull request #20354 from Aditi-1400/use-enum
...
Use enums instead of string for mesh shading figure type
2025-10-10 18:49:50 +02:00
calixteman
0d8a300777
Merge pull request #20353 from calixteman/improve_intersector
...
[Annotation] Improve the performance of the code for getting glyphs which belongs to annotations bounding boxes (bug 1987914)
2025-10-10 13:31:03 +02:00
Calixte Denizet
c4d436764c
[Annotation] Improve the performance of the code for getting glyphs which belongs to annotations bounding boxes (bug 1987914)
...
Instead of looking at every bbox, we use a grid (64x64) where each cell of the grid is associated with the bboxes
touching it.
In order to get the potential bboxes containing a point, we just have to compute the number of the cell containing
it and in using the associated described above, we can quickly know if the point is contained.
With the pdf in the mentioned bug, it's ~20 times faster.
2025-10-10 13:28:18 +02:00
Aditi
e8d08c941c
Use enums instead of string for mesh shading figure type
2025-10-10 04:21:03 +05:30
Calixte Denizet
9797dc0eb4
Improve performance of the struct tree build (bug 1987914)
...
For the pdf in bug 1987914, the overall time spent in `addTopLevelNode` is dropping from ~6s to ~70ms.
2025-10-09 16:08:56 +02:00
Calixte Denizet
19ff148163
Fix incremental saving with hybrid references
...
This patch removes some previous fixes which are now likely fixed by #17636 .
Fixes #20302 .
2025-10-04 18:31:55 +02:00
Calixte Denizet
4d15bfec0d
Only apply word spacing when there is a 0x20 in the text chunk
...
Fixes #20319 .
2025-10-03 22:18:02 +02:00
calixteman
3234912c86
Merge pull request #20224 from james-atticus/improve-serif-fallback-font-name-matching
...
Improve serif fallback font name matching
2025-10-01 19:58:13 +02:00
Ujjwal Sharma
4bed7370f4
[WIP] Serialize font data into an ArrayBuffer
...
This PR serializes font data into an ArrayBuffer
that is then transfered from the worker to the
main thread. It's more efficient than the current
solution which clones the "export data" object
which includes the font data as a Uint8Array.
It prepares us to switch to a SharedArrayBuffer
in the future, which would allow us to share
the font data with multiple agents, which would be
crucial for the upcoming "renderer" worker.
2025-09-19 12:02:40 +05:30
James Fitzsimmons
ae8f8e4d34
Improve serif fallback font name matching
2025-09-18 14:15:41 +10:00
Calixte Denizet
b6d772d71d
Consider a ttf font with both Symbolic and Nonsymbolic flags set with a Differences array in the encoding dict as non-symbolic
...
It fixes #20232 .
2025-09-14 18:52:16 +02:00
Calixte Denizet
2d5794f79d
[Editor] Fix saving a deleted popup
2025-09-08 15:36:41 +02:00
Calixte Denizet
af144be3ba
Don't iterate over all empty slots in the xref entries (bug 1980958)
2025-08-25 14:02:08 +02:00
Calixte Denizet
ebc3411727
Use the cached annotations when collecting them by types
2025-08-21 18:04:00 +02:00
Calixte Denizet
9e5ee1e5a7
[Editor] Add the ability to get all the editable annotations in a pdf document
...
We want to be able to show all the comments in a pdf even if the pages where they are
haven't been rendered.
And it'll help to fix the issue #18915 .
2025-08-18 21:31:11 +02:00
Calixte Denizet
1d4ae786f4
Check the setDash arguments
...
It fixes #20155 .
2025-08-09 22:34:44 +02:00
宋铄运 (Alan Song)
3d9374e02e
lazy initialize IccColorSpace.#finalizer
2025-08-05 22:29:32 +00:00
Calixte Denizet
57ce4f8f43
Use a HTML date/time input when a field requires a date or a time.
...
The user will be able to enter a date in the format corresponding to their locale
and it'll be formatted in using the format provided by the pdf.
2025-07-24 22:01:45 +02:00
Calixte Denizet
78391ed85a
Fix the xref table with the values we've at the beginning of a xref stream (bug 1978317)
2025-07-22 22:10:23 +02:00
Calixte Denizet
f695e0ca62
Make the link annotations correctly announced by screen readers (bug 1708041)
...
And focus the targeted page when the user clicks on a link.
2025-07-18 20:15:31 +02:00
Calixte Denizet
8fc51dc089
[Editor] Add the possibility to add a popup to an annotation when saving
...
When saving/printing, only update the properties which are provided and set
a default value only when there is no pre-existing one.
2025-07-11 21:42:21 +02:00
calixteman
0e2b59e3d5
Merge pull request #20064 from calixteman/dict_api
...
Add few methods to the Dict class in order to simplify the code when writing an annotation
2025-07-08 22:16:57 +02:00
calixteman
481b74a1c2
Merge pull request #20063 from calixteman/issue20062
...
Fix the default appearance of a Polygon annotation when a fill color is provided
2025-07-08 22:10:52 +02:00