الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

هل من الممكن تحويل الصورة الى نص

مغلق
بدأه mo_zamzam في 16 أبريل 2007 · 5 رد · 2,623 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

هل من الممكن تحويل الصورة الى نص

اى تحويل Image1 الى نص فى Memo1

وجدت موضوع فى المنتدى يعمل على تحويل النص الى صورة

ما اريده هو عكس العمليه

بعض البرامج تقرأ الصور بهذه الطريقه

07544269746D6170D6460000424DD64600000000000036000000280000009600

0000280000000100180000000000A04600000000000000000000000000000000

0000A6B1C1A6B2C1B6BFCAB7BFCABAC4CDBDC5CFBCC3CEBCC4CDB5C1CAB3C0C9

A0ACBAA0ADB99AA7B698A4B396A3B295A1B28F9EB18E9DB18D9CAE899AAE8A9A

AD8897AD899AAE8798AD8797AB8B9AAE8D9CB08998AD91A1B391A1B590A3B78F

A6B98EA7B98DA7BA98A9BA98A8BA9EADBDA0AFBF9FB3C39FB3C3A0B3C29EB3C3

تم تعديل هذه المشاركة بواسطة mo_zamzam في 16 أبريل 2007 في 01:07

#2
اقتباس
اى تحويل Image1 الى نص فى Memo1

كلامك يحتاج لشئ من التوضيح

هل تريد قراءة الصورة كملف بحيث يتم وضع الناتج في Memo1 بصيغة Hexadecimal ؟

حينها ستقوم بقراءة الملف بالطريقة العادية وأثناء القراءة يتم التحويل الى Hexadecimal ... هذا أتركه عليك

---

النص الذي وضعته بالهكسا مأخوذ من dfm الخاص بدلفي (معلومات الملف الأصلي مضاف إليه جزء خاص بدلفي )..

ذلك النص هو picture.data في ملف dfm ..

إن كنت تريد الحصول على picture.data فيمكن إستخدام ObjectBinaryToText

هذا كود يحصل على معلومات image1 بشكل عام ومنها يمكن تحصل على picture.data

procedure TForm1.Button1Click(Sender: TObject);
var
  BinStream:TMemoryStream;
  StrStream: TStringStream;
  s: string;
begin
  BinStream := TMemoryStream.Create;
  try
	StrStream := TStringStream.Create(s);
	try
	  BinStream.WriteComponent(Image1);
	  BinStream.Seek(0, soFromBeginning);
	  ObjectBinaryToText(BinStream, StrStream);
	  StrStream.Seek(0, soFromBeginning);
	  Memo1.Lines.LoadFromStream(StrStream);
	finally
	  StrStream.Free;

	end;
  finally
	BinStream.Free
  end;
end;

الكود موجود في Delphi Help ..(فقط قمت بتعديل بسيط)..

أترك الجزء الخاص بالحصول على picture.dat لك ...

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#3

نسيت ذكر شئ هام

أعتقد أنك خلطت المواضيع ببعضها .

- فلا علاقة لموضوع تحويل النص إلى صورة بالشئ الذي ذكرته في سؤالك ...

- أيضاً عملية تحويل صورة إلى نص توحي للقارئ بأن للموضوع علاقة بـ OCR .

- أنت ذكرت انك تريد تحويل Image1 والتي هي عبارة عن component . مما يوحي بأنك تريد تحويل component الى string , بينما نص الهكسا الذي وضعته هو جزء من النص المقروء (text version that human readers can understand) الخاص بـ Image

لذا أردت منك التوضيح قاصداً أن تعيد التفكير في هذه المفاهيم المذكورة وبين ما تريد ..

تم تعديل هذه المشاركة بواسطة cipher في 16 أبريل 2007 في 16:40

"First they ignore you, then they laugh at you, then they attack you, then you win"

===

اقتباس

حُكَّامُـنَا إِنْ تَصَـدّوا لِلْحِمَــى اقْتَحَمُـوا ***** وَإِنْ تَصَدَّى لَـهُ المُسْتَعْمِـرُ انْسَحَبُـوا

هُمْ يَفْرشـُونَ لِجَيْـشِ الغَــزْوِ أَعْيُنَـهُـمْ ***** وَيَدَّعُــونَ وُثُـوبَـاً قَـبْـلَ أَنْ يَثِـبُــوا

الحَاكِمُـونَ و«وَاشُنْـطُـنْ» حُكُومَتُـهُـمْ ***** وَاللامِعُــونَ وَمَـا شَعَّـوا وَلا غَرَبُــوا

القَاتِلُـــونَ نُبُــوغَ الشَّـعْــبِ تَرْضِـيَـــةً ***** لِلْمُعْتَدِيــنَ وَمَـا أَجْـدَتْـهُـمُ الـقُــرَبُ

لَهُمْ شُمُـوخُ «المُثَنَّـى» ظَاهِـرَاً وَلَهُـمْ ***** هَـوَىً إِلَـى بَابَـك الخَرْمِـيّ يُنْتَسَـبُ

البردوني "أبو تمام وعروبة اليوم" 1971

===

اقتباس
عبيد الهوى يحكمون البـلاد ***** ويحكمهــم كلّهـــم درهــــــم

و تقتـادهـم شهـوة لا تنــام ***** وهـــم فـي جـهالتهــم نــــوّم

ففــي كـــلّ ناحيــة ظـالـــم ***** غبــــــيّ يسـلـّطــــه أظلـــم

أيا من شبعتم على جوعــنا ***** وجـــوع بنينـا ألـم تتخمـــوا ؟

ألم تفهموا غضبة الكادحين ***** على الظلـم ؟ لا بدّ أن تفهموا

البردوني "نحن و الحاكمون "

#4

تستطيع ايضا تحويل الصورة الى ارقام

فكل نقطة في الصورة هي عبارة عن رقم نسميه p مثلا

هذا الرقم ناتج عن ثلاث ارقام r b g

اي احمر ازرق اخضر وكل من هذه الارقام يأخذ القيمة من 0 الى 255

حيث p=r+256*g+256*256*b

اذا اردت الحصول على قيمة p لنقطة احداثياتها في الصورة x , y

حيث مبدأ المعلم اي النقطة 0 0

هي اعلى نقطة في اقصى اليسار بالنسبة اليك

p=image1.pixels[x,y]

تم تعديل هذه المشاركة بواسطة bachirk في 16 أبريل 2007 في 19:34

#5

السلام عليكم

كود الأخ cipher اوصلني الى طريقة .. وهي ان تحول الصورة الى TMemoryStream ... Stream

ومن ثم تحفظ الــ Stream في Text File ... مهم تخزين الــ Stream في Text File .. غالبآ لن تنجح مع Memo او RichEdit

و لعرض الصورة تعمل العكس ..

وهذة تجربة :

procedure TForm1.Button1Click(Sender: TObject);
var
  Stream: TMemoryStream;
  JPG: TJPEGImage;
begin
  JPG := TJPEGImage.Create;
  Stream := TMemoryStream.Create;
  try
	Stream.LoadFromFile('test.jpg');
	Stream.SaveToFile('test.txt');
	Stream.LoadFromFile('test.txt');
	Stream.Seek(0, soFromBeginning);
	JPG.LoadFromStream(Stream);
	Image1.Picture.Assign(JPG);
  finally
	Stream.Free;
	JPG.Free;
  end;
end;

تم تعديل هذه المشاركة بواسطة source code في 16 أبريل 2007 في 19:55

#6

السلام عليكم

حاولت كثيرا أن أقوم بالعكس وهي تحويل النص إلى صورة

ولكن تمت العملية بالفشل

فأشيروا علي

هذا الموضوع مغلق.

مواضيع مشابهة