Android already contains a PDF engine. Most readers ship a second copy of it and grow to tens of megabytes; this one simply uses the one that is already there. What is left is the reader itself — continuous scrolling, pinch zoom, night reading — in forty thousand bytes, with no permissions, no advertising and no tracking.
Android contient deja un moteur PDF. La plupart des lecteurs en embarquent une seconde copie et pesent alors des dizaines de megaoctets ; celui-ci se contente d'utiliser celui qui est deja la. Reste le lecteur proprement dit — defilement continu, zoom au pincement, lecture de nuit — en quarante mille octets, sans aucune permission, sans publicite et sans traceur.
Only the first page is measured before anything appears; the rest follow in the background. A three-page memo and an eight-hundred-page manual take the same time to open — measured at 1.37 s against 1.50 s, and most of that is the application starting up.
Seule la premiere page est mesuree avant l'affichage ; les autres suivent en tache de fond. Une note de trois pages et un manuel de huit cents pages s'ouvrent dans le meme temps — 1,37 s contre 1,50 s a la mesure, dont l'essentiel est le demarrage de l'application.
Pinch to zoom, double-tap to switch between full width and 2.5x. Each visible page is re-rendered at the exact resolution of your screen as soon as your finger stops — never an enlarged blur.
Pincez pour zoomer, frappez deux fois pour basculer entre pleine largeur et 2,5x. Chaque page visible est reproduite a la resolution exacte de votre ecran des que le doigt s'arrete — jamais un agrandissement flou.
Portrait, landscape, A5 or A3 mixed in the same file: each page fits the width of the screen on its own terms. One landscape page will not shrink all the others.
Portrait, paysage, A5 ou A3 melanges dans un meme fichier : chaque page se cale sur la largeur de l'ecran pour son propre compte. Une page paysage ne reduit pas toutes les autres.
The exact reading position is remembered for each document, and the last one you were reading reopens when you launch the application. Sixty documents are kept; the oldest are forgotten.
La position de lecture exacte est retenue pour chaque document, et le dernier lu se rouvre au lancement de l'application. Soixante documents sont memorises, les plus anciens sont oublies.
One button inverts the colours, turning a white page into a dark one. It is a filter applied at drawing time, so it costs nothing and takes effect instantly.
Un bouton inverse les couleurs et transforme une page blanche en page sombre. C'est un filtre applique au moment du dessin : cela ne coute rien et l'effet est immediat.
The application declares no permission at all — not even storage. Documents arrive through an address the system has already authorised. There is no network code in it, so nothing can leave your device.
L'application ne declare aucune permission — pas meme le stockage. Les documents arrivent par une adresse que le systeme a deja autorisee. Elle ne contient aucun code reseau : rien ne peut quitter votre appareil.
No PDF engine, because Android already has one. No user-interface library either — not even AndroidX. What remains is the reader.
Pas de moteur PDF, puisque Android en possede deja un. Pas davantage de bibliotheque d'interface — pas meme AndroidX. Ce qui reste est le lecteur.
classes.dex |
All the code, after shrinkingTout le code, apres reduction | 56 116 o |
resources.arsc + 7 XML |
Layout, icons, colours, wordingDisposition, icones, couleurs, libelles | 10 232 o |
AndroidManifest.xml |
Declarations — no permission among themDeclarations — aucune permission parmi elles | 4 056 o |
| Signed APKAPK signe | Compressed, ready to installCompresse, pret a installer | 40 126 o |
| SwipeGlisser | Scroll through the whole document, with inertiaParcourir tout le document, avec inertie |
| PinchPincer | Zoom from a quarter of the width up to ten times itZoomer du quart de la largeur jusqu'a dix fois celle-ci |
| Double tapDouble frappe | Switch between full width and 2.5x, centred where you tappedBasculer entre pleine largeur et 2,5x, centre sur le point touche |
| Single tapFrappe simple | Show or hide the bar — it also fades on its ownAfficher ou masquer la barre — elle s'efface aussi d'elle-meme |
The size comes at a price, and you should know it before choosing this reader. Android's PDF engine produces an image of a page and nothing else. So there is no text search, no text selection, no forms and no annotations. If you need those, a heavier reader is the right tool.
Password-protected documents are declined rather than prompting for the password. There is no two-page spread and no horizontal paging.
The APK is distributed directly rather than through the Play Store: Android will ask you to allow installation from your browser the first time. It is signed with a production key, so later versions install over it without uninstalling first.
La legerete a un prix, et mieux vaut le connaitre avant de choisir ce lecteur. Le moteur PDF d'Android produit une image de page et rien d'autre. Il n'y a donc ni recherche de texte, ni selection, ni formulaires, ni annotations. Si vous en avez besoin, un lecteur plus lourd est l'outil qu'il vous faut.
Les documents proteges par mot de passe sont refuses, sans invite de saisie. Il n'y a ni mode double page, ni defilement horizontal.
L'APK est diffuse directement et non via le Play Store : Android vous demandera d'autoriser l'installation depuis votre navigateur la premiere fois. Il est signe avec une cle de production, donc les versions futures s'installeront par-dessus sans desinstallation prealable.
Version 0.1.0 — free, no account, no advertising, no tracking.
Version 0.1.0 — gratuit, sans compte, sans publicite, sans traceur.
Android 8 or later. The SHA-256 fingerprint above lets you check that the file you downloaded is the one we published.
Android 8 ou superieur. L'empreinte SHA-256 ci-dessus permet de verifier que le fichier telecharge est bien celui que nous avons publie.