Export pdf impossible depuis màj du site

Vous avez une question sur le fonctionnement du site ? Un problème dans votre collection ? C'est ici que vous devez poser vos questions.

Modérateur : Correcteurs

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » mer. juin 24, 2015 22:17

Cinoche a écrit :Perso, j'aime bien le hamburger si pas trop bourratif :wink: donc j’aimerai bien voir un visuel. Chninkel, est ce possible ?

Je ferai une capture d'écran quand ce sera implémenté (ou au moins un brouillon :wink:) ça peut prendre quelques jours/semaines, selon mes temps libres.

Cinoche a écrit :Le pop-up ne risque-t-il pas d'être bloqué ?

Non non, c'est pas un site web, c'est un application sur l'ordinateur de l'utilisateur, donc c'est juste une fenêtre d'option avec un message (comme n'importe quel programme) normalement rien ne le bloquera :wink:

Cinoche a écrit :Pour les boutons, un p'tit visuel aussi ? :oops: :oops:

Ah, ça faut demander à TaoNico :)
Inventaire BD | Mes BD

"Allez, en vous remerciant, bonsoir !"

Avatar du membre
Corwin
gourmand
Messages : 32
Enregistré le : mer. sept. 05, 2007 15:00
Localisation : Ambre

Messagepar Corwin » jeu. juin 25, 2015 10:38

Chninkel a écrit :Ah, bizarre, chez moi le pdf existant est automatiquement écrasé par le nouveau (tu utilises quel OS ?). Par contre c'est vrai qu'il faudrait un avertissement du genre "attention vous allez écraser le fichier collection.pdf ! ok/annuler" et alors effacer le fichier avant de créer le nouveau si ça pose problème chez toi.

Pas de soucis chez moi non plus (Win7). Ca bloque évidemment si le fichier est ouvert, mais sinon le fichier est écrasé.
Un petit message d'avertissement ne peut pas faire de mal :wink:
Chninkel a écrit :Une chose sur laquelle j'hésite, c'est où mettre les options de configurations proposée par Corwin :

- soit dans un menu "option" (avec fenêtre popup)
- soit dans un cadre directement dans la fenêtre principale de l'appli (avec les 3 boutons)
- soit dans un panneau latéral "dissimulable" façon Android (style le fameux menu hamburger, mais je sais que certaines personnes y sont allergiques :roll:)

des avis ?

Pas de préférence particulière, mais un panneau escamotable fait toujours son petit effet :P
Par contre, je me posais la question d'une possible sauvegarde des options choisies. Ca serait cool de ne pas avoir à recocher tout à chaque fois.

De mon coté, j'ai commencé à faire joujou avec le code. J'ai un un peu cassé la partie PDF pour refaire un truc à ma sauce (principalement les fonctions drawSerie et drawTome qui se contente de dessiner le contenu correspondant, la gestion des coordonnées étant gérée en amont (fonction save)). Ca tourne pas mal, juste quelques calages à fignoler. Je comptais rajouter les options ensuite.
Vous souhaiter que je vous pousse le code ?

Sinon, je me posais quelques questions sur l'export xml qui sert de données sources du coup :
- Est-ce normal que l'avancement et le genre de la série soit répétés à chaque tome ?
- Ne faudrait-il pas une balises <tomes></tomes> autour des tomes ?
- La gestion des coffrets (et intégrales ?) : certains sont numérotés et se retrouvent au niveau des tomes de même n°.
Et par extension, vis-à-vis de ce dernier point, ne faudrait-il pas faire une passe en base sur les n° des coffrets (si tant est qu'il faille des n° dans ces cas précis) ? Plus les cas des coffrets avec cale qui semblent être géré encore différemment.

A suivre donc ...

Corwin

Avatar du membre
Cinoche
Commis de cuisine
Messages : 911
Enregistré le : dim. mai 31, 2009 16:10

Messagepar Cinoche » jeu. juin 25, 2015 18:01

Chninkel a écrit :
Cinoche a écrit :Perso, j'aime bien le hamburger si pas trop bourratif :wink: donc j’aimerai bien voir un visuel. Chninkel, est ce possible ?

Je ferai une capture d'écran quand ce sera implémenté (ou au moins un brouillon :wink:) ça peut prendre quelques jours/semaines, selon mes temps libres.


Un brouillon, c'est parfait ! :D

Chninkel a écrit :
Cinoche a écrit :Le pop-up ne risque-t-il pas d'être bloqué ?

Non non, c'est pas un site web, c'est un application sur l'ordinateur de l'utilisateur, donc c'est juste une fenêtre d'option avec un message (comme n'importe quel programme) normalement rien ne le bloquera :wink:


Impecc :)

Chninkel a écrit :
Cinoche a écrit :Pour les boutons, un p'tit visuel aussi ? :oops: :oops:

Ah, ça faut demander à TaoNico :)


L'appel est donc lancé à TaoNico s'il repasse par ce post. :wink:
"Nous sommes ce que nous choisissons d'être".

Spider-Man

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » jeu. juin 25, 2015 19:18

Corwin a écrit :
Chninkel a écrit :Ah, bizarre, chez moi le pdf existant est automatiquement écrasé par le nouveau (tu utilises quel OS ?). Par contre c'est vrai qu'il faudrait un avertissement du genre "attention vous allez écraser le fichier collection.pdf ! ok/annuler" et alors effacer le fichier avant de créer le nouveau si ça pose problème chez toi.

Pas de soucis chez moi non plus (Win7). Ca bloque évidemment si le fichier est ouvert, mais sinon le fichier est écrasé.

Ah, c'est peut-être un indice pour TaoNico, chez moi (Linux) s'il est ouvert, il est quand même écrasé et il est même mis à jour automatiquement dans le lecteur de PDF :D
Corwin a écrit :Un petit message d'avertissement ne peut pas faire de mal :wink:

C'est fait, je l'ai rajouté hier soir et envoyé sur le git :wink:
Corwin a écrit :je me posais la question d'une possible sauvegarde des options choisies. Ca serait cool de ne pas avoir à recocher tout à chaque fois.

Oui, j'ai commencé à regarder à ça aussi : Qt propose un système de sauvegarde des paramètres qui a l'air assez simple.
Corwin a écrit :De mon coté, j'ai commencé à faire joujou avec le code. J'ai un un peu cassé la partie PDF pour refaire un truc à ma sauce (principalement les fonctions drawSerie et drawTome qui se contente de dessiner le contenu correspondant, la gestion des coordonnées étant gérée en amont (fonction save)). Ca tourne pas mal, juste quelques calages à fignoler. Je comptais rajouter les options ensuite.
Vous souhaiter que je vous pousse le code ?

Euh oui, on peut essayer, sauf si "fignoler tes calages" va beaucoup changer, alors on peut attendre un peu. Faudra qu'on réfléchisse aussi à un système où on propose le choix entre plusieurs styles. J'aimerais bien garder le mien "à plat/sans fioritures" disponible :D

Corwin a écrit :- Est-ce normal que l'avancement et le genre de la série soit répétés à chaque tome ?

Non, j'ai dû introduire un bug quand j'ai rajouté ces infos dans l'export XML. Bien vu :)
Corwin a écrit :- Ne faudrait-il pas une balises <tomes></tomes> autour des tomes ?

Non, je ne pense pas. On peut le faire pour des raisons esthétiques, mais le XML actuel est valide (en tout cas j'avais vérifié avant, mais j'ai peut-être mal lu les normes). Par ailleurs, ça complexifierait encore un peu le parsing du XML.
Corwin a écrit :- La gestion des coffrets (et intégrales ?) : certains sont numérotés et se retrouvent au niveau des tomes de même n°.
Et par extension, vis-à-vis de ce dernier point, ne faudrait-il pas faire une passe en base sur les n° des coffrets (si tant est qu'il faille des n° dans ces cas précis) ? Plus les cas des coffrets avec cale qui semblent être géré encore différemment.

Alors je ne sais pas ce que sont "les coffrets avec cale" mais on n'a, à ma connaissance, qu'une seule catégorie de coffret.

Pour les autres je pourrais rajouter, soit juste après l'import XML, soit pendant l'export PDF la contrainte de trier les "Tome".

Pour le moment je les ajoutes comme ils sont dans le XML, mais comme on sait lesquels sont des intégrales ou des coffrets on pourrait faire 3 boucles au lieu d'une seule. la première avec la contrainte "if (coffret)", la deuxième avec la contrainte "if (integrale)" et la troisième pour le reste. Ça c'est la solution "bricolage", je pense que ce serait mieux de trier à l'import du XML.

Ou alors modifier l'export XML du site, mais c'est plus compliqué à faire, donc j'aimerais autant éviter :D

au fait oui, il y a des coffrets numérotés, cf. "De Cape et de Crocs" et "Le chant des Stryges"
Modifié en dernier par Chninkel le jeu. juin 25, 2015 19:25, modifié 1 fois.
Inventaire BD | Mes BD



"Allez, en vous remerciant, bonsoir !"

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » jeu. juin 25, 2015 19:24

Chninkel a écrit :
Corwin a écrit :- Est-ce normal que l'avancement et le genre de la série soit répétés à chaque tome ?

Non, j'ai dû introduire un bug quand j'ai rajouté ces infos dans l'export XML. Bien vu :)

Corrigé :jap:
Inventaire BD | Mes BD



"Allez, en vous remerciant, bonsoir !"

Avatar du membre
Corwin
gourmand
Messages : 32
Enregistré le : mer. sept. 05, 2007 15:00
Localisation : Ambre

Messagepar Corwin » ven. juin 26, 2015 11:26

Chninkel a écrit :Oui, j'ai commencé à regarder à ça aussi : Qt propose un système de sauvegarde des paramètres qui a l'air assez simple.

Ok. Cool s'il y a moyen d'intégrer ca facilement !
Chninkel a écrit :Euh oui, on peut essayer, sauf si "fignoler tes calages" va beaucoup changer, alors on peut attendre un peu. Faudra qu'on réfléchisse aussi à un système où on propose le choix entre plusieurs styles. J'aimerais bien garder le mien "à plat/sans fioritures" disponible :D

A priori, plus beaucoup de modif. C'est surtout au niveau de la fonction drawTome que je voulais retrouver quelquechose de similaire à ce que j'avais fait précédemment. Dans tous les cas, à part les sources pdf.cpp(.h), je ne touche à rien.
Et oui, j'avais aussi dans l'idée de proposer ma "mise en page" en option de la tienne :wink:
La difficulté va être de proposer ces options sans que ca devienne un foutoir et avec un minimum d'ergonomie :P
Chninkel a écrit :Alors je ne sais pas ce que sont "les coffrets avec cale" mais on n'a, à ma connaissance, qu'une seule catégorie de coffret.

Il n'y a qu'une seule catégorie, mais ce que je voulais dire, c'est qu'en base, les coffrets ne sont pas tous renseignés de la même manière. J'identifie les cas suivants (par rapport à ma propre collection), mais il en existe peut-être d'autres :
1) Coffret sans n°
2) Coffret avec n° (parfois 0 :hein: )
3) Coffret avec un n° de tome
C'est ce dernier qui correspond généralement à ce que j'ai appelé "coffrets avec cale" (ils sont même parfois explicitement nommé ainsi, ex dans Carmen McCallum). Ils ont généralement le n° du tome présent dans le coffret (typiquement, fin de cycle, la cale étant à remplacer par les tomes du cycle édités précédemment que les gens ont donc potentiellement déjà achetés). Ils sont logiquement distincts du coffret plein (car pas le même prix évidemment et donc pas le même ISBN).
Mais du coup, ils se retrouvent placés différemment dans la liste des tomes :
1) Au début, dans un ordre par défaut (alphabétique? date ?)
2) A coté du tome de même n° (par ex : tome 1, coffret 1, tome 2, coffret 2, ... alors que le coffret 2 contient peut-être les tomes 4-5-6)
3) A coté du tome de même n° (idem, logique, mais du coup, le coffret va par exemple apparaitre "Cof 12" alors que ca n'est que le 3e coffret de la série)
Bref, il y a sans doute un petit travail à prévoir la dessus.
Chninkel a écrit :Pour les autres je pourrais rajouter, soit juste après l'import XML, soit pendant l'export PDF la contrainte de trier les "Tome".

Pour le moment je les ajoutes comme ils sont dans le XML, mais comme on sait lesquels sont des intégrales ou des coffrets on pourrait faire 3 boucles au lieu d'une seule. la première avec la contrainte "if (coffret)", la deuxième avec la contrainte "if (integrale)" et la troisième pour le reste. Ça c'est la solution "bricolage", je pense que ce serait mieux de trier à l'import du XML.

Ou alors modifier l'export XML du site, mais c'est plus compliqué à faire, donc j'aimerais autant éviter :D

Je ne sais pas comment est géré l'export XML, mais si la source pouvait être d'équerre directement, ca serait plus simple que de bricoler derrière. Il n'est pas issu d'une requête en base ? Il suffirait de trier dans la requête initiale. C'est ce que j'avais fait de mon coté pour l'export en php (tri avec dans un ordre perso : Cof/Int/Tom/HS). Mais j'avais typé les "tomes" dès le début. Là, je ne sais pas comment c'est géré, donc probablement plus difficile à faire a-posteriori.

A suivre donc ...

Corwin

PS : merci pour la correction XML et les derniers ajouts :jap:

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » lun. juin 29, 2015 21:20

je passe juste pour dire que je suis un peu à court de temps libre les deux prochaines semaines, mais promis après je m'y remets sérieusement :D
Inventaire BD | Mes BD



"Allez, en vous remerciant, bonsoir !"

Avatar du membre
Corwin
gourmand
Messages : 32
Enregistré le : mer. sept. 05, 2007 15:00
Localisation : Ambre

Messagepar Corwin » mar. juin 30, 2015 10:52

J'ai un peu avancé de mon coté. J'ai réussi à refaire ce que j'avais fait en php. Il me resterait à rendre ca paramétrable.
Un petit extrait :
Image
Par contre, je constate un petit truc bizarre : sur certains titres de tome, les caractères semblent davantage collés que d'autres. L'espacement n'est pas régulier ... Une idée d'où cela peut provenir ?

@+

Corwin

Avatar du membre
TaoNico
moineau
Messages : 8
Enregistré le : ven. mars 11, 2011 14:07

Messagepar TaoNico » dim. juil. 19, 2015 10:50

Bonjour,

Corwin, ton problème de caractères provient surement de la police d’écriture que tu utilises. Tu noteras par exemple que le s minuscule correspond toujours à problème.

Pour corriger ce problème, tu n'as qu'une solution, change de polie.

Avatar du membre
Corwin
gourmand
Messages : 32
Enregistré le : mer. sept. 05, 2007 15:00
Localisation : Ambre

Messagepar Corwin » dim. juil. 19, 2015 15:10

Désolé pour le silence des derniers jours, mais j'étais en congés aussi.
Pour mon soucis de caractères, je vais me repencher dessus. J'utilise pourtant la police Arial qui me parait bien passe-partout ...
Merci toujours TaoNico, je vais tester ca.

@+

Corwin

Avatar du membre
Corwin
gourmand
Messages : 32
Enregistré le : mer. sept. 05, 2007 15:00
Localisation : Ambre

Messagepar Corwin » dim. juil. 19, 2015 17:17

Par acquis de conscience, j'ai téléchargé la dernière version dispo sur https://bitbucket.org/bdovore/bdopdf et je l'ai testé avec ma propre collection (xml extrait de BDovore) et je n'obtiens pas la même chose que ce qui est présenté dans l'exemple (collectionEtAchatsFuturs-example.pdf).
Voici un exemple d'écart que j'observe :
Image
Je retrouve des problèmes similaires d'espacement de caratères. Du coup, je me dis que ca ne vient peut-être pas directement de mon code.
Vous avez le même genre de soucis chez vous aussi ?

Corwin

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » dim. juil. 19, 2015 22:59

non, je n'ai pas le problème, mais effectivement ta police est clairement différente de celle que j'ai (la barre oblique du "R" par exemple est + ronde chez moi et très droite chez toi, ou la boucle du "p", etc.).

Comme je n'ai pas configuré de police dans le code, Qt utilise une police par défaut, il faudrait trouver une police sans le problème et obliger l'export à l'utiliser.

Pour tester, je propose de modifier la police "serieTextFont" dans bdo/pdf.cpp. C'est celle qui défini l'aspect du texte de l'image que tu nous montres.

Pour l'instant les seuls codes qui se rapportent à cette police sont

Code : Tout sélectionner

this->serieTextFont = this->painter.font();
...
this->serieTextFont.setPointSize(8);


Tu peux essayer de changer la police en faisant :

Code : Tout sélectionner

this->serieTextFont.setPointSize(8);
if (!this->serieTextFont.fromString("Liberation Serif"))
    QTextStream(stdout) << "Could not set font from string" << endl;
else
    QTextStream(stdout) << "Set font from string" << endl;


Tu pourrais aussi simplement tester, par exemple :

Code : Tout sélectionner

this->serieTextFont.setPointSize(8);
this->serieTextFont.setLetterSpacing(QFont::PercentageSpacing,110);

un LetterSpacing de "110" augmentera l'espacement entre les lettres de 10% (proportionnellement à la largeur de chaque lettre). Tu peux jouer un peu avec ce paramètre pour tester si ça améliore tes résultats.
Mais bon, c'est pas une bonne solution parce que 110% chez moi c'est beaucoup trop espacé :-p
Inventaire BD | Mes BD



"Allez, en vous remerciant, bonsoir !"

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » dim. juil. 19, 2015 23:05

PS: pour choisir une police, tu peux simplement ouvrir Word (ou OpenOffice) et choisir le nom d'une qui te plaît dans la liste des polices.
Inventaire BD | Mes BD



"Allez, en vous remerciant, bonsoir !"

Avatar du membre
Chninkel
Administrateur
Messages : 2266
Enregistré le : mar. sept. 13, 2005 21:04
Localisation : Gelbique

Messagepar Chninkel » dim. juil. 19, 2015 23:14

Héhé :D, j'ai même une idée encore plus sympa :

remplace la ligne

Code : Tout sélectionner

this->serieTextFont = this->painter.font()

par

Code : Tout sélectionner

bool ok;
this->serieTextFont = QFontDialog::getFont(&ok, this->painter.font());

et tu pourras sélectionner facilement n'importe quelle police installée sur ta machine, sans devoir tout recompiler à chaque fois :wink:

(évidemment, il ne faut pas faire les autres modifications du post précédent en même temps, sinon ça va parasiter ton choix)

EDIT: dans tous les cas, à moyen-court terme, je pense que le choix de la police de cette façon est une option nécessaire à ajouter dans le menu d'option suggéré plus tôt :)
Inventaire BD | Mes BD



"Allez, en vous remerciant, bonsoir !"

Avatar du membre
hastaluego
moineau
Messages : 7
Enregistré le : lun. nov. 15, 2010 18:12

Messagepar hastaluego » mar. sept. 01, 2015 12:08

Juste un mot rapide pour vous remercier pour votre travail sur cet export PDF, bientôt la solution propre et compilée j'imagine c'est chouette :)
Bravo !