Forum Programmation.autre algo d'optimisation d'impression

Posté par .
Tags : aucun
1
7
avr.
2009
Bonjour à tous,

Je cherche à écrire un algo qui me permette d'optimiser l'impression de documents de nombre de pages variable mais de même taille physique (A5) sachant que 2 documents peuvent être imprimées côte à côte sur la même page physique A4, et qu'un même document ne peut apparaître que sur 1 côté de la page imprimée (càd qu'on pourra couper en deux les pages imprimées et on aura 1 tas avec le doc 1 et 1 tas avec le doc 2). Il s'agit de minimiser le nombre de pages blanches...

Par ex si j'ai un document de 40 pages, 1 document de 20 pages et 1 de 18 pages j'imprimerai les 20 première pages du 1er document en parallèle avec le deuxième et les 20 autres pages avec les 18 pages du troisième document. J'aurais alors 2 pages blanches. Je peux avoir jusqu'à une centaine de documents... En faisant travailler mes neurones, je me suis rappelé de mes vieux cours de recherche opérationnelle et j'arrive à une solution en utilisant un simplexe. Malheureusement cette solution est très lente dés que j'ai une dizaine de documents...

Ex : avec 7 documents de A:40,B:50,C:41,D:50,E:20,F:20,G:18 pages (et avec un max de 50 pages physiques A4 par impression) j'arrive à savoir qu'il faut imprimer ensemble les documents (A,C)-> 1 page blanche, (B,D) -> 0 pages blanche et (E,F,G) -> 18 pages blanches.

En pratique j'ai un ensemble de documents A5 à imprimer sur du A4 mais je ne veux pas simplement les imprimer en série, je veux les imprimer en parallèle de façon à ce qu'un coup de cutter au milieu de la page A4 me donne des documents au format A5 déjà rangés dans le bon ordre. Il existe sûrement des solutions open source pour faire ça (je suis preneur aussi !) mais je cherche surtout à trouver un algo sympa pour faire ça...

Est-ce que vous avez une idée d'algo performant pour faire ce genre de chose ?
  • # Un big document en deux

    Posté par . Évalué à 2.

    Prends tous tes documents, mets les bouts à bouts, et coupe ce document en deux parties égales à une page près si le nombre de pages est impair.

    Imprime ces deux documents en parralèlle. Tu te retrouve avec touts tes doc sauf un près à être lu. Pour le dernier, il suffit de prendre le fin d'un côté et de le mettre sur le debut de l'autre (en gros tu découpe au début, et tu entasse, et tu as tous des docs déjà près)

    Ce n'est peut être pas ce que tu recherche, mais pour ce problème, je ne chercherais pas plus loin une meilleur solution. Une page blanche max, on ne peut difficilement faire mieux sauf en ajoutant d'autres pages. Je vais d'ailleurs d'envoyer des fylers pour mon assoc. Plus de pages blanches et un tas de doc à une page pour te faire plaisir.
    • [^] # Re: Un big document en deux

      Posté par . Évalué à 1.

      Je veux éviter cela justement : me retrouver avec 5000 page imprimées et devoir chercher les début de doc au milieu... Ce que je souhaite c'est imprimer des lots de x pages contenant un minimum de pages blanches avec des documents complets. Avec ta proposition je ne pourrai imprimer qu'un seul des flyers de ton asso, ce serait dommage....
  • # 2 feuilles par pages...

    Posté par . Évalué à 2.

    2 feuilles par page => 0 A5 si tu as un nombre pair de page, 1 A5 gaché si le nombre de page est impair

    simple, efficace.
    et un A5 blanc sur 500 imprimés, ca peut te faire un bloc note de papier recyclé, ou te permettre de faire une maquette.

    d'ailleurs tu dois aussi pouvoir mettre du A5 directement dans ton imprimante
    cela evite alors le probleme de la decoupe, et tu imprimes 497 documents si tu as envie

    pas de probleme de page blanche
    • [^] # Re: 2 feuilles par pages...

      Posté par . Évalué à 1.

      c'est sûr que si tu ne tiens pas compte de la contrainte d'avoir directement à la sortie de l'imprimante les doc imprimés dans le bon sens c'est plus facile...

      La solution de mettre du A5 directement dans l'imprimante fonctionnerait bien sûr mais je cherche plus à avoir un algo intéressant pour le problème posé... ça me permettrait ensuite de le faire évoluer pour avoir par ex un A5 et 2 A6 sur une feuille A4...
      • [^] # Re: 2 feuilles par pages...

        Posté par . Évalué à 2.

        c'est sûr que si tu ne tiens pas compte de la contrainte d'avoir directement à la sortie de l'imprimante les doc imprimés dans le bon sens c'est plus facile...

        je vois pas trop le probleme

        j'ai un document d'une page A5 (flyer)
        j'en veux 500 exemplaires

        je demande à mon imprimante de m'en imprimer 2 par page
        il me met les 2 A5 cote à cote sur mon A4, dans le meme sens

        et je n'ai plus qu'a couper au milieu

        si tu veux faire des grands flyers (A5) et des petits (A6)
        et imprimer le tout sur du A4 (pour ensuite faire la decoupe)

        cela vaut peut-etre le cout de faire un montage final en A4 qui contient le A5 et les 2 A6

        evidemment il faut vouloir 2x plus de A6 que de A5

        sinon pour le A6 suffit de demander 4 par page
        tu aura donc 4 flyers A6 sur une page A4

        à toi les joies de la decoupe

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.