Aller au contenu
WebViewGold Du vibe coding à l'App Store
Français
Obtenir WebViewGold

Cursor + impression

Imprimer depuis votre app Cursor avec AirPrint et l'impression Android

Le bouton Imprimer qui fonctionne dans le navigateur reste généralement muet dans une app, car les WebViews d'app ne gèrent pas window.print() comme Safari ou Chrome. WebViewGold offre à votre app Cursor une alternative native : printitem:// télécharge un PDF ou une image depuis votre serveur et ouvre la boîte de dialogue d'impression du système, AirPrint sur iPhone et le service d'impression Android, avec l'option Enregistrer au format PDF.

Dès $109 en paiement unique par plateforme, ou notre équipe s'occupe de tout dès $698.

  • Garantie d'approbation – ou remboursement sous 14 jours
  • Aucun codage requis
  • Paiement unique, mises à jour gratuites
  • Support humain 24/7
  • Conçu en Allemagne depuis 2014 · ISO 27001

Ce que l'on imprime depuis les apps

Factures et reçus

Outils pour petites entreprises, apps de réservation et places de marché : le client ou la boutique imprime la facture que votre backend génère déjà.

Billets, étiquettes et badges

Billets d'événement, étiquettes d'expédition, badges nominatifs, laissez-passer avec QR code. Générez-les en PDF au bon format de papier et imprimez-les en deux gestes.

Rapports, fiches d'exercices et recettes

Rapports hebdomadaires, fiches d'exercices scolaires, programmes d'entraînement, recettes et checklists que l'on veut encore sur papier ou dans un PDF soigné.

Certificats et confirmations

Certificats de formation, confirmations de réservation et contrats signés, imprimés ou enregistrés en PDF directement depuis l'écran où l'utilisateur les consulte.

Prompt pour Cursor

Collez ceci dans Cursor pour implémenter la partie app web. Vérifiez le résultat, publiez, puis testez dans l'app WebViewGold.

Prompt pour l'agent Cursor
Prompt pour l'agent Cursor : Ajoutez l'impression native pour le wrapper d'app WebViewGold. 1) Créez lib/webviewgold/print.ts qui exporte printFile(url, jobName) : quand navigator.userAgent contient mon token WebViewGold personnalisé, la fonction navigue vers "printitem://?jobName=" + encodeURIComponent(jobName) + "&printItem=" + url, et sinon ouvre l'URL dans un nouvel onglet. 2) Ajoutez une route serveur GET /print/:token qui vérifie un token signé (5 minutes) et renvoie un PDF généré à partir de notre balisage de facture existant. 3) Ajoutez un endpoint POST qui crée le token pour l'utilisateur connecté et renvoie l'URL absolue sur notre domaine de production, sans query string. 4) Reliez à ces éléments un bouton Imprimer sur les factures et les billets. 5) Écrivez un test d'intégration qui récupère l'URL d'impression sans cookies et attend 200 et application/pdf. 6) Documentez le contrat printitem:// dans .cursor/rules.

Excellent travail! Je n'ai jamais codé quoi que ce soit, mais j'ai réussi à travailler avec cela. Facile et rapide! Avec une grande aide des créateurs!

Lucas Dubois · CodeCanyon

Ajouter un bouton Imprimer qui fonctionne

Environ une heure, dont l'essentiel pour le modèle PDF.

  1. Générez un fichier imprimable

    Générez la facture, le billet ou le rapport en PDF (ou en PNG/JPG) sur le serveur, au format du papier prévu : Letter ou A4, une étiquette de 4 × 6 pouces, un billet. Sur Android, les images sont mises à l'échelle pour tenir sur la page.

  2. Rendez l'URL accessible sans connexion

    L'app télécharge elle-même le fichier indiqué dans printItem, et la documentation exige que cette URL soit accessible publiquement depuis l'appareil. Utilisez un lien signé de courte durée, sans & ni #, par exemple https://app.yourdomain.com/print/8f3a2c.pdf.

  3. Appelez printitem:// depuis le bouton

    Naviguez vers printitem://?jobName=Facture%20%23123&printItem=https://…/invoice.pdf. printItem est obligatoire ; jobName est facultatif et doit être encodé pour les URL (sans lui, Android affiche « Print Job »). Placez printItem en dernier, comme dans la documentation.

  4. Gardez le parcours navigateur

    Détectez l'app grâce au user agent personnalisé défini dans WebViewGold. Dans un navigateur classique, gardez window.print() ou ouvrez le PDF pour que sa visionneuse l'imprime.

  5. Testez avec une imprimante et avec Enregistrer au format PDF

    Imprimez un PDF multipage et une image sur iPhone et sur Android, et essayez Enregistrer au format PDF. Vérifiez les marges, les sauts de page et le nom de la tâche dans la file d'impression.

Un helper d'impression pour l'app et le navigateur

Le helper demande à votre serveur une URL de fichier de courte durée et choisit le bon parcours. Pour votre app Cursor, la route PDF a sa place ici : Vos propres routes API ou services.

javascript
var IN_APP = navigator.userAgent.indexOf("WebViewGold") !== -1; // votre token de user agent personnalisé

async function printInvoice(invoiceId) {
  // le serveur génère un PDF et renvoie un lien de courte durée, accessible publiquement
  var res = await fetch("/api/invoices/" + invoiceId + "/print-link", { method: "POST" });
  var link = (await res.json()).url; // ex. https://app.yourdomain.com/print/8f3a2c.pdf

  if (IN_APP) {
    var job = encodeURIComponent("Facture " + invoiceId);
    window.location.href = "printitem://?jobName=" + job + "&printItem=" + link; // printItem en dernier
  } else {
    window.location.assign(link); // navigateur : la visionneuse PDF l'imprime
  }
}

Bon à savoir avant de publier

  • L'impression elle-même ne déclenche aucune demande d'autorisation. Le fichier est mis en cache temporairement sur l'appareil ; sur Android, il est supprimé dès que la tâche est placée dans la file d'impression.
  • Les imprimantes de tickets Bluetooth qui ne prennent en charge ni AirPrint ni le service d'impression Android ne sont pas couvertes : elles nécessitent le SDK du fabricant, donc une intégration native sur mesure.
  • Gardez les données personnelles hors des noms de fichiers et des noms de tâches ; les files d'impression et les journaux des imprimantes les conservent.
  • L'impression est une fonctionnalité native crédible pour les apps professionnelles (factures, billets, étiquettes). Mentionnez-la dans les notes de validation avec vos autres fonctionnalités natives ; à elle seule, elle ne suffira pas à convaincre au regard de la guideline 4.2.

Questions fréquentes

Pourquoi window.print() ne fait-il rien dans l'app ?

Les WebViews d'app n'implémentent pas la commande d'impression du navigateur comme Safari et Chrome, si bien que l'appel reste généralement sans effet. printitem:// confie plutôt un fichier au système d'impression natif, qui gère aussi les PDF multipages de façon plus fiable.

Les utilisateurs peuvent-ils enregistrer un PDF au lieu d'imprimer ?

Oui. Android propose Enregistrer au format PDF dans la boîte de dialogue d'impression, et sur iOS les utilisateurs peuvent enregistrer ou partager le document depuis les options d'impression. Beaucoup s'en servent précisément pour archiver leurs factures.

Puis-je imprimer l'écran que l'utilisateur est en train de regarder ?

printitem:// imprime un fichier à partir d'une URL. Générez cette vue en PDF sur le serveur (la plupart des stacks ont une bibliothèque PDF ou un navigateur headless pour cela) et transmettez le lien ; le résultat est d'ailleurs plus soigné sur papier que la mise en page web.

Le fichier doit-il être public ?

Il doit être accessible depuis l'appareil sans votre connexion. Un lien signé qui expire au bout de quelques minutes le permet, sans exposer vos factures en permanence.

Trois façons de mettre votre app dans les stores

Même résultat, charge de travail différente de votre côté. Les trois formules incluent la garantie d'approbation et le support humain 24/7.

Faites-le vous-même

$109 par plateforme, paiement unique

La licence WebViewGold : un projet Xcode ou Android Studio prêt à l'emploi. Collez votre URL, définissez le nom et l'icône, activez les fonctionnalités, compilez et soumettez. Mises à jour gratuites à vie.

Voir les offres sur la page principale

Full Service

$698 par plateforme $798

Envoyez-nous votre URL et votre icône. Notre équipe configure, compile et livre votre app sous 72 heures, en marque blanche, projets sources inclus. Les deux plateformes pour $1,158.

Détails du Full Service Propulsé par WeSetupYourWebViewApp

Prix Soldes d'hiver valables jusqu'au 31 décembre 2026.

Prêt à publier votre app Cursor ?

Garantie d'approbation App Store & Google Play – ou remboursement sous 14 jours

Vous préférez déléguer ? Full Service : nous configurons, compilons et livrons sous 72 heures, dès $698 par plateforme. Des questions ? Chattez avec nous 24/7.

Les remboursements sont accordés aux conditions indiquées dans notre FAQ : un refus non lié au contenu par Apple et/ou Google, demandé dans les 14 jours suivant l'achat.