![]() |
אחר | שמירת טבלה כתמונה
שלום לכולם,
קודם אני אציג לכם את הרעיון שתבינו במה מדובר. זה אתר לעצמי כזה. לעצמי ולעוד כמה חברים. לא תכננתי לפרסם אותו או משהו כזה. אבל בכל זאת. זה מעין רשת של פיקסלים. 500 על 500. שמחולקת ל2500 ריבועים קטנים. כל אחד מורכב מ10 על 10 פיקסלים. הרעיון הוא לעצב כל פעם כמה ריבועים קטנים. בסופו של דבר, יתקבל תמונה שמורכבת מ2500 תמונות קטנות. אני לא מתכנן בדיוק להשיג פה משהו. זה לכיף ליצירתיות וליופי. [אז הימנעו מתגובות כמו משועמם, בשביל מה, מה זה נותן לך וכו'..]. בכל מקרה, אחרי ההקדמה. חשבתי על רעיון להוסיף שאנשים שצופים באתר, כמו חברים או מי שהאתר יגיע אליו. וירצה להוסיף גם תמונות משלו יוכל לעצב באתר און ליין ושזה ישלח אלי/יועלה לאיחסון. אז הינה אתם יכולים לראות את ה"מערכת": http://biode.info/Pixel/build.htm אם אתם רוצים לראות את האתר עצמו: http://biode.info/Pixel/index.htm זה בנוי בJavaScript. ומה שבעצם זה עושה זה אתם בוחרים צבעים. ואז צובעים על ידי לחיצה את הפיקסלים למעלה. הבעיה שלי היא, שאין לי שמץ של מושג אם אפשר איכשהו לשמור את זה. כלומר אחרי שהטבלה ממולאת. כלומר שכולה מלאה בצבעים. וסיימו. אני צריך איזשהו כפתור שיהפוך את הטבלה הצבועה לתמונה ואז: או שהתמונה תשמר אצל המשתמש. או שהתמונה תועלה לשרת. או שהתמונה תשלח אלי למייל. הקטע של השליחה למייל אני יודע. אבל שהתמונה תשמר אצל המשתמש או שהתמונה תועלה לשרת אין לי מושג. בכלל, אפשר להפוך טבלה לתמונה? תודה לעוזרים. :) |
לא הבנתי אותך האמת. אתה מדבר על זה?
http://biode.info/Pixel/build.htm או על זה? http://biode.info/Pixel/index.htm |
הסברתי על למה אני צריך את זה בindex.htm
עכשיו בbuild.htm אם תראה ותנסה להשתמש. אתה לוחץ על אחד הצבעים. ואז צובע למעלה מעין תמונה מוגדלת של 10 על 10 פיקסלים בעצם. עכשיו כשהמשתמש מסיים לעצב את זה. אני צריך איכשהו להמיר כל TD לפיקסל בעצם. ואז ליצור תמונה של 10X10 פיקסלים. שבעצם שווה לטבלה באתר [build[הטבלה העליונה איפה שצובעים]] ל10TR שבכל TR יש 10TD. בעצם 100TD= 100 פיקסלים. מקווה שהבנת. :) |
זה PHP.. לא JS..
|
אבל זה אפשרי? להפוך כל TD מטבלה לפיקסל ולהפוך לטבלה?
אם כן, אני אלמד מה שצריך.. :) |
http://www.php.net/manual/en/function.imagesetpixel.php
אולי זה יעזור לך |
זה נראלי שכן. אבל וואו זה ממש לא מובן.
טוב אני אנסה ללמוד מזה משהו.. תודה רבה :) |
זה GD, בהתחלה קצת מורכב אבל ברגע שקולטים את הקונספט של אובייקט בזכרון לתמונה ולצבעים זה מובן יחסית.
תקרא על כל הפונקציות שמופיעות שם בדוגמה, עדיף לפי הסדר שהן מופיעות :) |
יש לי שאלה,
כשאני עושה לדוגמא: imagesetpixel ($img, 5, 5, $white); זה עובד לי. וצובע את הפיקסל ה5 על ה5 בלבן. [הגדרתי לפני זה עם imagecolorallocate]. השאלה שלי איך אני עושה את זה בלי להגדיר כל פעם לפני. כלומר, איך אני כותב נגיד קוד של צבע [כמו נגיד #003366]? והאם יש איזשהי דרך להגדיר צבע. [אבל לא עם RBG אלה שוב עם קוד של צבע [#ffff00]] וכו'..? |
כתבתי לך פונקצייה קטנה שעושה את זה יותר בקלות:
PHP קוד:
PHP קוד:
|
בדקתי באתר שלהם כדי להבין מה עשית והבנתי. כעיקרון הRBG זה כל אות היא בעצם 2 תווים בקוד שאני משתמש בו.
עכשיו עשית 3 SUBSTR שזה פעולה שמוציאה את התווים שאתה מחליט בעזרת 2 פרמטרים. התחלה וסוף. ואז הHEXDEC בעצם זאת פעולה שהופכת תווים מקוד רגיל לקוד של HEX למספרים של RBG? [זה רק כדי להבין אם הבנתי מה שכתבת..]. עכשיו שאלה אחרת, באתר ששמתי פה. עשיתי הכל בJS. את כל הבנייה של הטבלה. עכשיו השאלה היא האם אפשר לעשות את אותו הדבר בPHP? כלומר, שבמעבר עכבר זה יציג ובלחיצה זה יצבע וכו'..? או שאפשר לייבא לPHP את התוכן של משתנה בJS? |
יותר קל
בגלל שהם מציירים אונליין לא חובה תמונה אפילו תארגן טבלה קטנה בדטאבייס של x, y, color ובכל לחיצה תעדכן את זה בעמוד הראשי תמשוך ותצבע |
לא רוצה לעדכן בעמוד הראשי.
אני רוצה שהתמונה תשמר או בשרת או תשלח אלי במייל. ואני לא יודע להתעסק עם DB.. :\ את האמת שאני רק עכשיו התחלתי JS.. זה הדבר הראשון שאני עושה בJS. וPHP אלה הקודים הראשונים בכלל שאני עושה. [יש לי קצת רקע והבנה בגלל שאני יודע Java] אבל עדיין יש הבדלים גדולים. וקצת קשה לי להבין. בכל זאת, חשבתי להכניס בTDים של הצביעה, חוץ מהאפקטים של הOnmouseover/out/click. בJS. את הפונקציה של הצביעה בPHP. ולנהל את התמונה כבר כשהם צובעים למטה בגודל האמיתי שלה. יש אפשרות כזאת? וד"א יש לי בעיה שכתוב לי משהו עם header is already sent כשאני שם את הקוד PHP [שעובד לי בקובץ נפרד] בקובץ עם הHTML גם.. והJS.. למה? |
הגדרת HEADERS ב-PHP צריכה לבוא לפני כל הדפסת מידע לצד לקוח..
|
אז עשיתי פתיחה של PHP בשור הראשונה של המסמך, אחריה את ההגדרה של ההידר ואז סגרתי.
התחלתי את כל הHTML. והJS. ואז במקום שהייתי צריך את כל שאר הקוד של הPHP. שמתי את כל הקודים של התמונה. משום מה אני רואה את כל האתר חוץ מההידר כטקסט. ולא כאתר. כאילו כל הקוד כתוב.. מה זה? |
ההגדרת HEADERS שעשית לא טובה כנראה..
|
אני מעתיק מהאתר של PHP.
זה ההגדרה: <?php header("Content-Type: image/png"); ?> אחריה יש לי את כל ה: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="he" lang="he" dir="rtl"> <head> <title>My Pixels</title> <meta http-equiv="content-type" content="text/html; charset=windows-1255" /> <link rel="stylesheet" type="text/css" href="css.css" /> </head> ואז הBODY. עם כל התגיות והJS וכל השאר. ואז באמצע הBODY אני פותח שוב: <?php $img = imagecreate(10, 10); imagecolorallocate($img, 256, 256, 256); $black = imagecolorallocate($img, 0, 0, 0); function CreateColorHex($code, $img) { return imagecolorallocate($img, hexdec(substr($code, 0, 2)), hexdec(substr($code, 2, 2)), hexdec(substr($code, 4, 2))); } imagepng($img); ?> וזה פשוט מראה את כל הקוד: http://biode.info/Pixel/build.php |
אחי, כשאתה עושה imagepng לקבוץ זה מוציא לפלט תמונה רגילה, לא קוד html של תמונה.
זאת אומרת הקוד של התמונה צריך להיות קובץ אחר ואז לקרוא לו עם <img src="img.php"... /> |
אבל אז אין לי איך לעשות שכשהם צובעים TD לצבוע את התמונה הקטנה..
יש לך איזה שהוא רעיון? |
לא הבנתי את התגובה האחרונה..
|
הוא אמר פה שצריך את התמונה לעשות בקובץ נפרד. ואז לעשות img src= עם שם הקובץ. נגיד img.php
עכשיו, מה שאני עשיתי, זה שיש טבלת צבעים. כשהמשתמש לוחץ על צבע. יש משתנה ואז כאשר הוא לוחץ על TD בטבלה למעלה היא משנה את צבע הרקע שלה לצבע שיש במשתנה. השאלה שלי זה האם אני יכול לעשות, שכשהמשתמש לוחץ על TD מסויים בטבלה וצובע אותה. זה יצבע את אותו הפיקסל בתמונה בקובץ החיצוני, יעדכן אותה, ואז התמונה "אונליין" תצבע באותו העמוד.. |
כל הזמנים הם GMT +2. הזמן כעת הוא 18:07. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ