Cet article a été archivé et ne sera plus mis à jour par Apple.

Création de widgets HTML5 pour iBooks Author

Découvrez comment créer des widgets HTML5 que vous pouvez utiliser dans les livres que vous créez dans iBooks Author.

iBooks Author prend en charge les widgets HTML5, dont l’extension est .wdgt. Pour créer un widget HTML5, utilisez un éditeur de texte ou une app de création de contenu pour créer ces trois fichiers :

  • Un fichier HTML principal : celui-ci constitue la partie principale du widget. Vous pouvez lui donner le nom de votre choix, mais son extension doit être .html. Vous pouvez placer du code CSS et JavaScript dans le fichier HTML principal. Vous pouvez également ajouter des fichiers .css et .js au paquet du widget, et les charger à partir du fichier HTML principal. Vous pouvez utiliser n’importe quelle technique pour concevoir une page web. Utilisez le fichier HTML pour définir la structure du widget, du code CSS pour le style visuel et du code JavaScript pour le rendre interactif.

  • Fichier Default.png : le meilleur moyen de créer ce fichier consiste à effectuer une capture d’écran de votre fichier HTML principal dans une app de création de contenu web ou dans un navigateur web. Il s’agit de l’image que les utilisateurs voient sur la page et qu’ils doivent toucher pour ouvrir le widget. Dans une app de création de contenu web ou un navigateur web, effectuez une capture d’écran de votre fichier HTML principal. Donnez-lui le nom « Default.png » en vous assurant d’utiliser un D majuscule. Lorsque le widget est actif, sa taille correspond à celle du fichier Default.png. Vous pouvez modifier cette taille dans le fichier Info.plist.

  • Fichier Info.plist : ce fichier fournit à iBooks Author et à l’Apple Books les informations nécessaires à l’exécution de votre widget. Le nom du fichier doit être Info.plist.

Une fois ces fichiers obligatoires créés, vous pouvez en créer d’autres, facultatifs, tels que des fichiers CSS ou JavaScript. Ajoutez-les ensuite tous à un paquet de widget :

  1. Dans le Finder, créez un dossier.

  2. Ajoutez les fichiers au nouveau dossier.

  3. Renommez le dossier et ajoutez une extension .wdgt à son nom pour créer le paquet contenant le widget. L’icône du dossier devient une icône de widget.

  4. Ajoutez votre widget à iBooks Author.

Conseils pour la création de widgets

Avant de créer votre paquet de widget, assurez-vous qu’aucun des fichiers à inclure ne comporte de caractère de contrôle dans son nom. Si tel est le cas, vous ne pourrez pas publier le livre dans la librairie de l’Apple Books.

Si vous définissez votre widget pour une lecture automatique, il ne peut pas accéder à Internet.

N’utilisez pas d’icônes de dossiers personnalisés et évitez les noms de dossiers suivants dans votre widget :

  • Ressources/

  • Support Files/Resources/

  • Contents/Resources/

Pour optimiser votre widget pour un écran Retina :

  • Dans vos fichiers HTML, CSS et JavaScript, utilisez le protocole standard de création de sites web avec graphismes Retina (2x).

  • Incluez, dans votre paquet, un fichier nommé Default@2x.png. Attribuez à ce fichier une résolution deux fois supérieure à celle du fichier Default.png. Vous ne pouvez pas voir ce fichier dans iBooks Author, mais dans l’Apple Books sur un écran Retina.

Découvrez comment optimiser les livres que vous créez avec iBooks Author.

Fichier Info.plist

Un fichier Info.plist de base comprend des clés obligatoires et des clés facultatives. Ce tableau répertorie ces clés, leur définition et des exemples de valeurs pour un widget intitulé « Hello World ».

Clé

Exemple de valeur

Obligatoire

Définition

CFBundleDevelopmentRegion

Anglais

Facultatif

Chaîne indiquant la région d’origine du paquet. Il s’agit généralement de la langue maternelle de la personne créant le paquet.

CFBundleDisplayName

Hello World

Obligatoire

Chaîne comprenant le nom du widget. Cela s’affichera dans iBooks Author et dans l’Apple Books.

CFBundleIdentifier

com.apple.widget.HelloWorld

Obligatoire

Chaîne identifiant le widget au format de domaine inverse.

CFBundleName

Hello World

Facultatif

Chaîne comprenant le nom du widget. Ce nom doit correspondre à celui du paquet constituant le widget qui se trouve dans le Finder (sans l’extension .wdgt).

CFBundleShortVersionString

1.0

Facultatif

Chaîne indiquant le numéro de version raccourci du widget. Sa valeur est généralement identique à celle de la clé CFBundleVersion.

CFBundleVersion

1.0

Facultatif

Chaîne indiquant le numéro de version du widget.

Taille

768

Facultatif

Nombre indiquant la hauteur en pixels de votre widget. Si ce nombre n’est pas renseigné, la hauteur du fichier Default.png est utilisée.

MainHTML

HelloWorld.html

Obligatoire

Chaîne indiquant le nom du fichier HTML mettant en œuvre votre widget avec la clé facultative Width1024

Width

1024

Facultatif

Nombre indiquant la largeur en pixels du widget. Si ce nombre n’est pas renseigné, la largeur du fichier Default.png est utilisée.

IBNotifiesOnReady

Facultatif

Si cette clé est définie sur true (vrai), le widget indique à l’Apple Books le moment où il doit passer de l’affichage du fichier Default.png à l’affichage du widget HTML en cours d’exécution.

Le fichier Info.plist complet d’un widget ressemble à ceci :

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>CFBundleDevelopmentRegion</key> <string>English</string> <key>CFBundleDisplayName</key> <string>Hello World</string> <key>CFBundleIdentifier</key> <string>com.apple.widget.HelloWorld</string> <key>CFBundleName</key> <string>Hello World</string> <key>CFBundleShortVersionString</key> <string>1.0</string> <key>CFBundleVersion</key> <string>1.0</string> <key>Height</key> <integer>768</integer> <key>MainHTML</key> <string>HelloWorld.html</string> <key>Width</key> <integer>1024</integer> <key>IBNotifiesOnReady</key> <true/> </dict> </plist>

Restrictions et limitations associées aux clés

N’utilisez pas les clés ci-dessous. Leurs fonctionnalités ne sont pas compatibles.

Clé

Description

AllowFileAccessOutsideOfWidget

Les widgets des livres créés à l’aide d’iBooks Author n’ont pas accès aux fichiers du système de fichiers général.

AllowFullAccess

Abréviation pour une liste d’autres clés d’accès, certaines d’entre elles n’étant pas compatibles.

AllowInternetPlugins

Les modules Internet, tels que Flash, ne sont pas disponibles dans les livres créés avec iBooks Author. Vous pouvez ajouter des fichiers vidéo et audio en HTML5

Les fichiers vidéo et audio inclus dans un widget HTML ne sont pas protégés par DRM.

AllowJava

Les widgets des livres créés dans iBooks Author ne peuvent pas inclure de contenu Java.

AllowSystem

Les widgets des livres créés dans iBooks Author ne peuvent pas accéder aux commandes système.

Plugin

Les widgets des livres créés dans iBooks Author ne peuvent pas inclure de composant de module Cocoa.

iBooks Author ignore les clés suivantes :

Clé

Description

CloseBoxInsetX

Les widgets dans iBooks Author et dans l’Apple Books ne comportent pas de décoration de fermeture.

CloseBoxInsetY

Fonts

Les widgets d’iBooks Author ne peuvent pas utiliser les polices intégrées.

Configuration requise en matière de fichiers vidéo et audio

Les fichiers multimédias dotés de l’extension .m4v ou .m4p ne sont pas pris en charge. Ceux-ci doivent comporter l’extension .mp4 et utiliser les formats suivants :

  • Contenu vidéo H.264 : jusqu’à 720p, 60 images par seconde. Profil de qualité 4.2 avec audio AAC-LC jusqu’à 160 kbit/s, 48 kHz, audio stéréo. Ces réglages s’appliquent également aux fichiers vidéo compatibles avec iMovie 10 et l’option HD 720p.

  • Contenu vidéo MPEG-4 : jusqu’à 2,5 Mbit/s, 640 x 480 pixels, 30 images par seconde. Niveau Simple Profile avec audio AAC-LC jusqu’à 160 kbit/s par canal, 48 kHz, audio stéréo.

Pour un contenu audio, utilisez le format AAC (8 à 320 kbit/s, stéréo 48 kHz) avec l’extension de fichier .m4a.

Les fichiers vidéo et audio inclus dans un widget HTML ne sont pas protégés par DRM.

Si un fichier audio ou vidéo n’est pas lu dans votre widget dans iBooks Author, visionnez un aperçu sur votre iPhone, iPad ou Mac. Cela vous permettra de savoir comment le fichier sera lu une fois votre livre terminé.

Localisation

iBooks Author ne prend pas en charge les chaînes ou éléments localisés. Incluez les chaînes de texte dans la langue cible que le lecteur peut voir en ligne.

Réparation des éléments rognés

Des éléments tels que

#video { width: 960; height: 540; }

Développement pour iOS et macOS

iOS et macOS utilisent des types d’entrée différents. Vous pouvez accepter à la fois les entrées tactiles et celles de la souris lorsque vous créez votre widget HTML pour iBooks Author.

Éviter le flash à l’ouverture du widget HTML

Si votre widget HTML est très complexe, vos lecteurs peuvent voir un flash lorsqu’ils l’ouvrent dans l’Apple Books. Pour éviter ce flash, mettez à jour votre widget de façon à indiquer à l’Apple Books quand passer du fichier Default.png au widget HTML :

1. Ajoutez un élément IBNotifiesOnReady défini sur true (vrai) au fichier Info.plist du widget. L’Apple Books sait alors que le widget lui indiquera quand passer au widget HTML.

<key>IBNotifiesOnReady</key>

2. Configurez votre widget de manière à charger la bibliothèque JavaScript d’Apple dans une

iOS et macOS disposent déjà du fichier AppleWidget.js. Vous n’avez donc pas à l’inclure dans votre paquet.

3. Configurez votre widget pour qu’il informe l’Apple Books lorsque le fichier HTML est initialisé. Dans le code JavaScript se trouvant dans la

widget.notifyContentIsReady()

Publication sur un service web externe

Vous pouvez publier des widgets HTML sur des services web externes uniquement s’ils utilisent les en-têtes Cross-Origin Resource Sharing (CORS) appropriés.

Date de publication: