none
האם יש דרך טובה להדפיס קובץ HTML? RRS feed

  • שאלה

  • שלום רב, אני מנסה למצוא דרך להדפיס קובץ HTML במוד silent והדפסה לאורך או לרוחב ובנוסף לסטיילים שיש בתוכו, מהי הדרך הנכונה להדפיס?
    יום ראשון 25 מאי 2014 12:57

תשובות

  • אופן ההדפסה לא קשור לדוט-נט וגם לא למערכת ההפעלה, אלא לתוכנה שפותחת את הקובץ. כאשר אתה מדפיס קובץ PDF ה acrobat reader מבצע את הפירמוט של הקובץ וההכנה להדפסה, וכאשר אתה מדפיס קובץ וורד אז האופיס אחראי על הכנת הקובץ להדפסה, באופן דומה הדפדפן שלך אחראי על האופן בו הקובץ מועבר להדפסה בעקרון אם זה קובץ HTML והדפדפן מוגדר לפתוח קבצים כאלה ולהדפיס אותן. אם תנסה להדפיס קובץ שאין לך תוכנה מתאימה לעבוד איתו אז לא תצליח כמובן להדפיס אותו.

    האופן שבו קובץ מודפס נקבע על ידי התוכנה המופעלת. החלק של דוט-נט כאן הוא רק להפעיל את המתודות המתאימות של מערכת ההפעלה, ולשלוח את הקובץ להדפסה. תוכנת ההדפסה של מערכת ההפעלה רק צריכה לנטר את סוג הקובץ והלפעיל את התוכנה המתאימה בצורה נסתרת (ללא חלון).

    בכל מקרה נראה לאור המידע שלנו מהשירשורים השונים כאן, שאכן זה הפתרון שיכול להתאים לך: או לייצר קובץ PDF ולהדפיס כמה פעמים שאתה רוצה, או לייצר קובץ HTML עם חלוקה של הטבלה לעמודים ולהדפיס אותו.


    [Personal Site] [Blog] [Facebook]signature

    • הוצע כתשובה על-ידי Eran Sharvit יום שני 26 מאי 2014 15:45
    • נערך על-ידי pituachMVP, Moderator יום שני 26 מאי 2014 16:53
    • סומן כתשובה על-ידי Eran Sharvit יום ראשון 01 יוני 2014 11:08
    יום שני 26 מאי 2014 14:39
    מנחה דיון

כל התגובות

  • היי

    לא הבנתי דויד, אתה שואל על פקודת ההדפסה דרך C# (ז"א כיצד לשלוח את הקובץ להדפסה) או על עיצוב ופורמט ההדפסה עצמה?


    [Personal Site] [Blog] [Facebook]signature

    יום ראשון 25 מאי 2014 14:56
    מנחה דיון
  • בוקר טוב רונן (Pituach), 

    לגבי פקודות ההדפסה,אין כיום דרך סטנדרטית להדפיס ישירות קובץ HTML, מכיוון שהוא לא מתרנדר בדרך הרגילה, אז צריך לחפש דרכים אחרות, למשל להמיר לPDF ואז להדפיס אותו, רציתי לשאול אם יש דרך אחרת, טובה ואמינה להדפסה - שמאפשרת להדפיס עם העיצוב המקורי + פורמט ההדפסה - לאורך או לרוחב, מספר עותקים וכדומה?

    יום שני 26 מאי 2014 06:19
  • למה החלטת שאין דרך לשלוח להדפסה ישירות?!?

    כמובן שיש אפשרות. כבר לפני הרבה שנים פתחתי מערכת ניהול מידע לאוניברסיטת ת"א ואחר כך גם לקרן רש"י ביצעתי כמה שינויים, שכל ההדפסה של מסמכים נעסתה ישירות דרך ממשק אינטרנטי. אין צורך לפתוח מסמך לצפייה על מנת להדפיס אותו. למעשה לא רק שיש דרך אלא שהיא ממש קלה בדוט נט (לפני 15 שנים בערך כשפיתחתי את ההדפסה הראשונה הראשונה במערכת ניהול מידע זה היה ב C אם אני לא טועה).

    לגבי שליחה להדפסה תעבור על הקישור הבא:
    http://msdn.microsoft.com/en-us/library/system.drawing.printing.printdocument.print(v=vs.110).aspx

    עכשיו לגבי עניין העיצוב של ההדפסה הרי שזה עניין שמנהלים בהתאם לסוג המסמך. במרה של מסמך HTML כפי שהיה הדיון הקודם הרי שאנחנו עובדים עם CSS. אבל הרבה יותר נוח הרבה פעמים לייצר קובץ PDF ולשלוח אותו להפדסה למשל (או קובץ וורד או אקסל וכו') ואז כל עניין העיצוב מטופל באופן שונה.

    לגבי מספר עותקים לשלוח להדפסה הרי שזה תלוי ב"כיצד שלחת את ההדפסה".
    אם ההדפסה נעשתה בקוד C# למשל אז פשוט תבצע לולאה ותשלח כמה פעמים (זה בערך מה שאני ביצעתי כי ההדפסה במערכת המידע היתה למשל של מעטפות ו/או מכתבתים לקבוצת אנשים מסויימת). אפשרות נוספםת פשוטה גם בה השתמשתי בעבר בצורה יעילה במערכת אינטרנטית, היתה הדפסה מרובה של מסמכים (שוב מכתבים קבוצת משתמשים) בעזרת הלוגיקה הבאה:

    ייצרתי קובץ HTML הכולל מספר עותקים של המכתב כאשר בכל עותצק החלק של פרטי האדם היו שונים. עתה אפשרתי למנהל לבחור "הצג לפני הדפסה" או "שלח להדפסה". בלוגיקה הזו אתה למעשה לא צריך לבצע הכפלה של הדפסה אלא רק מדפיס מסמך אחד בודד. אם השטלת על נושא הדפסת מסמח HTML אז הפתרון הזה יכול לעזור לך להדפסה מרובה (זה לא יתאים למאות אלפי עותקים כי נוצר מסמך ענק אבל בהחלט יעבוד יפה עם 50 עותקים בלי בעיה).


    [Personal Site] [Blog] [Facebook]signature

    יום שני 26 מאי 2014 08:41
    מנחה דיון
  • לא אמרתי שלא ניתן לשלוח ישירות - הדרך שמצוינת בלינק ששלחת מוכרת - היא לא עובדת היטב עם HTML מהסוג שדיברנו עליו בדיון הקודם - אפשר כמובן לחלק את הטבלאות למספר קבצי HTML שונים, אכן, כנראה שההמרה לPDF ואז לשלוח אותו להדפסה היא הפתרון המועדף והקל (וזה גם נראה נהדר).

    חשבתי שעד היום - NET 4.5 - שמייקרוסופט כבר הספיקה להכניס איזשהו דרך סטנדרטית להדפסת מסמך HTML - במקום כל השמיניות באוויר שאנו עושים פה:\


    • נערך על-ידי DavidMichaeli יום שני 26 מאי 2014 09:28
    יום שני 26 מאי 2014 09:28
  • אופן ההדפסה לא קשור לדוט-נט וגם לא למערכת ההפעלה, אלא לתוכנה שפותחת את הקובץ. כאשר אתה מדפיס קובץ PDF ה acrobat reader מבצע את הפירמוט של הקובץ וההכנה להדפסה, וכאשר אתה מדפיס קובץ וורד אז האופיס אחראי על הכנת הקובץ להדפסה, באופן דומה הדפדפן שלך אחראי על האופן בו הקובץ מועבר להדפסה בעקרון אם זה קובץ HTML והדפדפן מוגדר לפתוח קבצים כאלה ולהדפיס אותן. אם תנסה להדפיס קובץ שאין לך תוכנה מתאימה לעבוד איתו אז לא תצליח כמובן להדפיס אותו.

    האופן שבו קובץ מודפס נקבע על ידי התוכנה המופעלת. החלק של דוט-נט כאן הוא רק להפעיל את המתודות המתאימות של מערכת ההפעלה, ולשלוח את הקובץ להדפסה. תוכנת ההדפסה של מערכת ההפעלה רק צריכה לנטר את סוג הקובץ והלפעיל את התוכנה המתאימה בצורה נסתרת (ללא חלון).

    בכל מקרה נראה לאור המידע שלנו מהשירשורים השונים כאן, שאכן זה הפתרון שיכול להתאים לך: או לייצר קובץ PDF ולהדפיס כמה פעמים שאתה רוצה, או לייצר קובץ HTML עם חלוקה של הטבלה לעמודים ולהדפיס אותו.


    [Personal Site] [Blog] [Facebook]signature

    • הוצע כתשובה על-ידי Eran Sharvit יום שני 26 מאי 2014 15:45
    • נערך על-ידי pituachMVP, Moderator יום שני 26 מאי 2014 16:53
    • סומן כתשובה על-ידי Eran Sharvit יום ראשון 01 יוני 2014 11:08
    יום שני 26 מאי 2014 14:39
    מנחה דיון