اذهب إلى المحتوى

E.Nourddine

الأعضاء
  • المساهمات

    1458
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    18

كل منشورات العضو E.Nourddine

  1. نعتبر الشكل التالي على برنامج Gimp: من خلال القائمة Layer > Transparency > Alpha to Selection نفعّل نمط Alpha-channel نعكس الجزء المحدد من خلال: Ctrl+I. نملأ الخلفية بلون ما. نعكس الجزء المحدد مرة أخرى من خلال: Ctrl+I. نحذف الجزء المُحدد من خلال زر Del. يمكن أن نحصل على نصف شفافية في الجزء الجانبي للصورة.
  2. عليك باستعمال الزرين Ctrl مع Shift ذلك أن Gimp يختلف عن Photoshop، ويمكنك الإبقاء على الزرين مضغوطين مع رسم خط مستقيم، والاحتفاظ على قيمة زاوية الميل عند °0.
  3. من الجيد متابعة العديد من المدونات العربية والأجنبية، وإن كانت الأجنبية كثيرة، حيث يحرص أصحاب هذه المدونات أو كتابها على نشر جديد التصميم، بما في ذلك Photoshop، Illustrator، Gimp، Inkscape.. فتكون مدوناتهم بمثابة المرجع الذي يمكن الإطلاع عليه باستمرار عن طريق الاشتراك بالقائمة البريدية كي تحصل على تنبيهات بريدية بكل جديد عليها. كما أن ظهور مواقع التصميم الشهيرة، أصبح يحتم على كل مصمم مهتم بالمجال رؤية الأعمال الخاصة بمصممين محترفين، حتى يبقى على علم بالجديد، ويواكب تطور المجال، من هذه المواقع أذكر: behancedribbbleالمدونات: jnackكما لا يفونتي ذكر قسم الدروس الذي تخصصه أكاديمية حسوب للتصميم من خلال الرابط.
  4. وظيفة ()Fill خاصة بـ DataAdapter، ونستعملها لملئ جدول مؤقت على DataSet انطلاقا من قاعدة البيانات، بالطريقة التالية: adaptadordatos.Fill(conjuntoDatos, "Alumnos")لذا يجب عليك إنشاءها: Dim myAdapter As MySqlDataAdapter = New MySqlDataAdapter(CadenaSQL, Conexion) myAdapter.Fill(conjuntoDatos, "Alumnos")وهذا مثال كامل لاستعمال DataSet على تطبيق Vb.net: Private m_DataSet As DataSet Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load ' Build the DataSet. m_DataSet = New DataSet("Student Scores") ' Build the Students table. Dim dt_students As New DataTable("Students") m_DataSet.Tables.Add(dt_students) dt_students.Columns.Add("StudentId", GetType(Integer)) dt_students.Columns.Add("FirstName", GetType(String)) dt_students.Columns.Add("LastName", GetType(String)) ' Build the TestScores table. Dim dt_testscores As New DataTable("TestScores") m_DataSet.Tables.Add(dt_testscores) dt_testscores.Columns.Add("StudentId", GetType(Integer)) dt_testscores.Columns.Add("TestNumber", GetType(Integer)) dt_testscores.Columns.Add("Score", GetType(Integer)) ' Populate the Students table. Dim student_data(2) As Object student_data(0) = 1 student_data(1) = "Amy" student_data(2) = "Anderson" dt_students.Rows.Add(student_data) student_data(0) = 2 student_data(1) = "Bob" student_data(2) = "Baker" dt_students.Rows.Add(student_data) ' Code for other insertions deleted... ' Populate the TestScores table. Dim testscores_row As DataRow ' Student 1. testscores_row = dt_testscores.NewRow() dt_testscores.Rows.Add(testscores_row) testscores_row.Item("StudentId") = 1 testscores_row.Item("TestNumber") = 1 testscores_row.Item("Score") = 98 testscores_row = dt_testscores.NewRow() dt_testscores.Rows.Add(testscores_row) testscores_row.Item("StudentId") = 1 testscores_row.Item("TestNumber") = 2 testscores_row.Item("Score") = 94 ' Code for other insertions deleted... ' Bind the DataGrid to the DataSet. DataGrid1.DataSource = m_DataSet End SubDataSet
  5. التركيز الطويل على خط أسود مكتوب على خلفية بيضاء، يمكن أن يسبب تعبا في الأعين، وخاصة إذا كان النظر للنص لمدة طويلة، لذا ينصح المتخصصون بوجوب تجنب ذلك، كما أن نوع خط النص يؤثر بطريقة أو بأخرى في هذه النقطة. كما أن اللون الأسود للنص على خلفية بيضاء يخلق معاناة لدى القارئ، خاصة ذلك الذي يعاني بالأساس من صعوبة في النظر، لذا يلجأ جل المصممين إلى تجنب استعمال اللون الأبيض في الخلفية مع لون النص الأسود، وذلك إما بكسر اللون الأبيض -مزجه مع لون آخر مخفف- أو باعتماد لون نص آخر غير الأسود القاتم، كاستعمال الرمادي المركز أو أي من الألوان الأخرى التي تريح العين أثناء القراءة والتصفح. (Contrast (Minimum
  6. الحل المناسب والأمثل في هذه الحالة، هو تمديد الخلفية حسب حجم القيمة العديدة دون تغيير تنسيق الصفحة، حتى لا تؤثر على باقي العناصر الأخرى في نفس الصفحة. بالنسبة لحجم الخط أقترح عدم تغيره مع تغير حجم القيمة العديدة، حتى يبقى مقروء. ويمكن إضافة الحرف K للدلالة على الآلاف. مثال:
  7. لون Progress bar يمكن تغيره على Vb.Net باستخدام الكود. أولاً قم باضافة هذا السطر البرمجي داخل الكلاس : <DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)>الآن أنشئ عداد Timer واضف بداخله الكود التالي: Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick ProgressBar1.Value += 1 val -= 1 Label2.Text = val & " Sec" If ProgressBar1.Value = ProgressBar1.Maximum Then Timer1.Enabled = False End If If ProgressBar1.Value > 23 Then SendMessage(ProgressBar1.Handle, 1040, 2, 0) End If End Subملاحظة: 1 للون الأخضر، 2 للأحمر و3 للأصفر.
  8. هناك العديد من المعايير التي يمكن ترتيب اللغات حسبها، نذكر منها: حسب درجة أهمية اللغة، وأقصد بالأهمية هنا عدد المستخدمين لكل لغة على الموقع.الترتيب حسب اسم اللغة بالانجليزية.ترتيب اللغات حسب الاسم باللاتينية.حسب الترتيب بمعيار Unicode الاسماء.هذا الترتيب مثلا تعتمد قناة BBC في إظهار اللغات على موقعها: وحسب الترتيب اللاتيني للاسم، نحصل على: العربية [al-ʿarabīyyah][አማርኛ [amarəñña[বিষ্ণুপ্রিযা় মণিপুরী [Bishnupriya ManipuriEnglishעברית [ivrit][მარგალური [margaluri[日本語 [Nihongo[Русский [russkiyإذن ترتيب اللغة يبقى حسب المعيار المناسب لك أنت-حسب الحاجة-، ومن الأفضل اختيار معيار الترتيب حسب الاسماء باللاتينية.
  9. Non-manifold geometry هي هندسة لا يمكن تواجدها في العالم الحقيقي، وإنما هي خيالية، تستعمل في أغلب الأحيان في أفلام الخيال العلمي، وكذا طابعات 3D، تتميز بـ: إظهار آثار الانكسار.محاكاتها للسوائل.طباعة 3D.أمثلة:
  10. نعم هو أمر ضروري، وخاصة بالنسبة للمستعملين البعيدين عن التقنية. فشركة Google مثلاً احتفظت بزر البحث على محركها الشهير، ولم تزله، وعياً منها بأهميته، ورغم أنه يحيل إلى الشكل الكلاسيكي لمربع البحث فهو يبقى ذو أهمية كبيرة للمستخدمين. لأن الناس تعودوا على زر يضغطونه بعد إدراج كلمة البحث، وهذا ما تحثنا عليه تجربة المستخدم 'الحرص على ما ينتظره المستخدم'.
  11. else تستعمل في الجزء الأخير من دالة التأكد if، ويمكن أيضا استخلاص فائدتها مع try من خلال Handling Exceptions على الموقع الرسمي لـ Python، حيث أنه من الجيّد استعمالها مع try لتفادي أي exception غير متوقع من قبل المبرمج، ومن الممكن تجاوز try ورفع exception توقف البرنامج أو التطبيق، وهذه طريقة استعمالها: try: operation_that_can_throw_ioerror() except IOError: handle_the_exception_somehow() else: # we don't want to catch the IOError if it's raised another_operation_that_can_throw_ioerror() finally: something_we_always_need_to_do()وَ: for arg in sys.argv[1:]: try: f = open(arg, 'r') except IOError: print 'cannot open', arg else: print arg, 'has', len(f.readlines()), 'lines' f.close()
  12. يمكن التأكد من وجود عنصر في مصفوفة أم لا، عبر استخدام دالة in والتي تُرجع قيمة true أو false، بهذا الشكل: 3 in [1, 2, 3] # => True استعمال filtering لفلترة المصفوفة والتأكد من وجود القيمة بداخلها: matches = [x for x in lst if fulfills_some_condition(x)] matches = (x for x in lst if x > 6)أو: matches = filter(fulfills_some_condition, lst) البحث عن عنصر، حيث سنحصل على أول نتيجة في حال كان العنصر متكرراً بداخل المصفوفة: next((x for x in lst if ...), [default value]) إرجاع مكان تواجد العنصر -index- داخل المصفوفة: [1,2,3].index(2) # => 1 [1,2,3].index(4) # => ValueError
  13. يمكن استعمال هذا الأمر في الطرفية: python -m py_compile script.py حيث أن script.py هو ملف السكريبت، ويقوم الأمر السابق بالتأكد من خلو الكود من أي خطا، عبر تفحصه سطراً سطرا أي أنه يعمل compiling. هذه بعض المصادر: PyCheckerPyflakesPylint
  14. يمكنك استعمال ()is، حيث يمكن التأكّد من مرور مؤشر الفأرة فوق العنصر أو الوسم، حيث تُرجع كقيمة true أو flase، وهذا مثال بسيط عن كيفية استعمالها: var isHovered = $('#elem').is(":hover"); // true أو falseمثال تطبيقي1كما يمكن استعمال : var isHovered = !!$('#up,#down'). filter(function() { return $(this).is(":hover"); }).length;مثال تطبيقي2
  15. أولا سيتوجب عليك المرور على جميع عناصر القائمة المنسدلة، والتأكد عبر البحث عن هذا العنصر انطلاقا من قيمته، ليتم حذفه في حال كان هو العنصر المبحوث عنه، إليك الكود: $(".ct option[value='X']").each(function() { $(this).remove(); });كما يمكن استعمال كود جد مختصر، لكنه بنفس وظيفة الكود السابق: $(".ct option[value='X']").remove();* ملاحظة: X هي قيمة العنصر بداخل القائمة المنسدلة.
  16. حدّد vertex واضغط على Ctrl+Shift+B سيُنشأُ شكل جديد مكان vertex آنذاك يمكن تغييره كما تريد، توضح الصورة المُتحركة ما تم ذكره:
  17. نعم يمكن إدراج حقل مع امكانية التحقق عن طريق tooltip validation msg. المثال على JSFiddle. كود jQuery : function validate(el) { var regex = /^\d+$/g; var valid = regex.test(el.value); if (!valid) { // Check if popover is already visible to handle flicker effect. if ($("#txtInput").next('div.popover').length == 0) { $('#txtInput').popover({ placement: 'bottom', content: 'This is not a valid entry' }).popover('show'); } } else { $('#txtInput').popover('hide'); } كود html: <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script> <link rel="stylesheet" href="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css"> <script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script> <input type="text" id="txtInput" onkeyup="validate(this)">مراجع: Documentation. Check visibility
  18. تتدخل عوامل عدة في تباعد الكلمات في السطر الواحد، منها التباعد بين الأحرف، البعد بين الكلمات بالإضافة إلى نوع الخط المُستعمل. وهذه بعض الخصائص التي يمكن من خلالها ضبط المسافة المستعملة في الكلمات، عن طريق تغيير هذه الخصائص: \fontdimen1 : للخط المائل. \fontdimen2: المسافة بين الكلمات.\fontdimen3: تمديد الكلمة.\fontdimen4: تقليص الكلمة. \fontdimen7: مساحة إضافية. \xspaceskip: إضافة فراغات.مثال: \documentclass{article} \usepackage[margin=1in]{geometry} \usepackage{lipsum} \begin{document} \newdimen\origiwspc% \newdimen\origiwstr% \origiwspc=\fontdimen2\font% original inter word space \origiwstr=\fontdimen3\font% original inter word stretch \lipsum[1]% normal text \fontdimen2\font=0.2ex% inter word space \lipsum[1]% decreased inter word space \fontdimen2\font=\origiwspc% (original) inter word space \fontdimen3\font=0.1em% inter word stretch \lipsum[1]% decreased inter word stretch \fontdimen3\font=\origiwstr% (original) inter word stretch \fontdimen2\font=1em% inter word space \lipsum[1]% increased inter word space and stretch \fontdimen2\font=\origiwspc% (original) inter word space \fontdimen3\font=\origiwstr% (original) inter word stretch \lipsum[1]% original/normal text \end{document}نتيجة الكود أعلاه:
  19. إمكانية قراءة جدول من وورد وتضمينه تلقائياً في وثيقة LaTeX تعتبر إلى حد الساعة غير ممكنة، لكن يمكن كتابة جدول بالكود على برنامج LaTeX، على أن يكون الجدول بعمودين، أحدُها للفارسية والآخر للإنجليزية، وذلك باستعمال خاصية multicol التي توفر إمكانية إدراج أعمدة عدة في نفس الجدول، لتكون نتيجة ذلك: الكود: \documentclass{article} \usepackage[margin=2cm]{geometry} \usepackage{longtable,csvsimple,booktabs} \usepackage{fontspec} % for the Latin alphabet \usepackage{multicol} \usepackage{array} \usepackage{xepersian} \settextfont{Nazanin} % font for Persian \setmainfont[Script=Arabic]{Times New Roman} % Latin Alphabet \begin{filecontents*}{xtable.csv} English, Persian Euclidean geometry, هندسۀ اقلیدسی Hippocrates, بقراط Poetica,بوطیقا Plato, افلاطون Al-Hazem, ابن رشد ... more content here \end{filecontents*} \newsavebox\ltmcbox \begin{document} \begin{multicols}{2} \setbox\ltmcbox\vbox{ \makeatletter\col@number\@ne \csvreader[ longtable=rl>{\beginR}l, table head= & \bfseries English & \bfseries فارسی \\ \midrule\endhead \bottomrule\endfoot, late after line=\\]% {xtable.csv}{English=\English, Persian=\Persian}% {\thecsvrow & \English & \Persian} \unskip \unpenalty \unpenalty} \unvbox\ltmcbox \end{multicols} \end{document}
  20. بناء مدينة باستخدام Blender ممكن، لكنه ليس بالأمر السهل، حيث سنحتاج إلى الكثير من المجسمات والكثير من التأثيرات للوصول إلى النتيجة النهائية، لكن سأحاول إعطاء لمحات عن مختلف مكونات الوسط الحضري -المدينة-، وهذه بعض الصور المصمم بـ Blender: يساعد Block Wall Builder على بناء مكونات المباني - حائط ونافذة...-: نستعمل Window Generator 2 لنباء نوافذ زجاجية وبأشكال مختلفة: وَ Jamb Generator لإعطاء الأبواب تأثير جذاب: وَ Archimesh لصنع دولاب ومختلف مرافق البيت من الخشب: ثم: صنع مباني بتأثير يميل إلى مباني الرسوم المتحركة: تأثير الخشب : صنع أشكال أنابيب: صنع تضاريس على شكل جبال: أشجار: ثم: نباتات: إضافة ال حجارة من خلال Add Rocks هذا الفيديو مفيد لك:
  21. يمكنك التحكم في مجموعة من النقاط عن طريق تحديدها كلها والتعامل معها على أساس نقطة واحدة ثم التغيير عليها، وهذه بعض الاختصارات الخاصة بلوحة المفاتيح: Alt+Space : تُغيّر منحى التوجه إلى Normal.S: اختصار لـScale Selected.Z: تعيين المحور Z .Enter: تأكيد الخطوة.وعن طريق الفأرة: بعد الضغط بزر الفأرة الأيسر ستظهر هذه النافذة المتحكمة في الجزء المُحدّد للتغيير في خصائصه: للحصول على النتيجة التالية:
  22. نعم من الممكن الحصول على نفس التأثير وتأثيرات أخرى كثيرة، وذلك من خلال الولوج إلى القائمة Decimate->Collapse وَ Decimate->Un-Subdivide. حيث تمكنك النافذة بجانب شكل المكعب والذي أخذناه كمثال تجريبي، من تغير مظهر الشكل الخارجي للمجسم، وعند أي تغيير في إعداداتها سيظهر وبشكل تلقائي التغيير على المكعب:
  23. انطلاقا من جهة الرؤية الأمامية Numpad 1 أنشئ منحنى عمودي، من خلال الاختصار Alt+C. حدد النقطة في المركز، وبأداة التحرير (O)، حدد حجم الدائرة المحيطة بالمجسم": تحديد مستوى plan لتحوّل منحنى الشكل: إبطال التحرير على الشكل، ونسخ الشكل للحصول على: حرّك الأشكال، ثم فعّل أداة التحرير، لكن هذه المرة سنمسك برأس الأشكال من فوق ونديرها حول المحور X : بعد بعض التغيرات على الأشكال حتى تظهر في شكلها الأخير:
  24. قد يبدو الأمر صعبًا في البداية، ولكن الصعوبة الحقيقية في التغييرات البسيطة التي تمكّن من الحصول في آخر المطاف على زخرفة ثلاثية الأبعاد جميلة. نبدأ بشكل منحني، من خلال القائمة extra objects-->Curves Galore: إضافة دائرة للشكل مع التغيير الطفيف في شكل الانحناءات: تحويل الشكل إلى شكل ممتلئ، أي 3D: قم بتشويه المجسم من الجهة العلوية: أنشئ شكل مقسّم إلى 8 طبقات، حتى يسهل التغيير على كل طبقة على حدى: غيّر كل طبقة لوحدها، لنحصل في الأخير على هذه الزخرفة: ثم رؤية من فوق:
  25. يمكنك الحصول على مجسم برميل باتباع الخطوات التالية: أنشئ شكل أسطواني مكون من عدة أجزاء -16جزء-، أي دائرة مكونة من 16 جزء، كما هو مبيّن: إنشاء دائرة عن طريق الاختصار Shift+A، وحدّد عدد الشرائح المكوّنة لها في 16 شريحة.تغيير عرض الشرائح عن طريق الاختصار E, مع التغيير في عرض الشرائح.تحديد شريحة واحدة -وجه واحد- ومسح باقي الأوجه الأخرى.بعد الضغط على زر Esc لإنهاء التغيرات على الشكل ستحصل على شكل البرميل.هذه طريقة ثانية لبناء مجسم البرميل:وذلك عن طريق استعمال array modifier: بما أن البرميل مكون من 16 جزء أي أن زاوية دوران كل جزء ستكون هي خارج قسمة 360/16=22.5. بعض إضافة تأثيرات أخرى على البرميل، ستكون هذه هي النتيجة النهائية:
×
×
  • أضف...