|
I'm trying to add spacing to the beginning of some text so that I can put small symbols before specific lines of text. The size of the symbols is always the same, 10x10 pixels, however the number of symbols can range from none to half a dozen.
The problem I'm running in to is figuring out the number of spaces to indent the text. Normally I'd simply move the bounding box over by the size of the bullets, but in this case, the next line of text needs to wrap under the graphics I'm inserting, so moving the bounding box cuts down on the space available for text.
Right now I'm just adding in 3 * the number of spaces as there are symbols in hopes of getting close, but it's a bit off. I've tried using MeasureString to get the size of a space, then adding enough spaces to move the text, but it comes out too little with only 1 symbol and not nearly enough by the time there are 4 or more symbols.
Any suggestions?
The true man wants two things: danger and play. For that reason he wants woman, as the most dangerous plaything.
|
|
|
|
|
Why not always start the text with a symbol? Use a blank one instead of your spaces and off you go. I don't think spaces are a good way to go; the width of a space can vary depending on the font - start a reply to this and compare the width of a space in the "Subject" and "Text" areas. The font size is the same, but the space width is different.
No trees were harmed in the sending of this message; however, a significant number of electrons were slightly inconvenienced.
This message is made of fully recyclable Zeros and Ones
|
|
|
|
|
That's why I was using measurestring to check the size of the space in whatever font was being used at that moment. As for always using a symbol, that would be simple, except the number of symbols changes.
What would be nice is if there were a way to indent text within a bounding box, by a set number of pixels. Just like in a text editor where if you go to the beginning of a paragraph and insert tab, everything indents and the word wrap updates to fit each following line.
The only other thing I've thought of so far would be doing the word wrap manually by measuring each line and breaking up the string until it fit. I've just hoped to avoid that since it's going to involve rounding between lines, making the line spacing squirrely.
The true man wants two things: danger and play. For that reason he wants woman, as the most dangerous plaything.
|
|
|
|
|
But if your symbols are always the same size (as you said) just use the appropriate number of blank symbols. You cannot guarentee to get the same size with spaces - there may not be a neat multiple to ten, twenty and so on pixels.
Avoid manual word wrap - I had to do it yonks ago (pre windows) and it is a PITA.
No trees were harmed in the sending of this message; however, a significant number of electrons were slightly inconvenienced.
This message is made of fully recyclable Zeros and Ones
|
|
|
|
|
Each Symbol is the same size, however if there's only 1 symbol and I leave room for 6 of them, then I've lost half of that line of text. The print out is about 2.25" x 2.25" a little smaller than half a playing card. So each bit of space is a premium.
The true man wants two things: danger and play. For that reason he wants woman, as the most dangerous plaything.
|
|
|
|
|
Sadly, doing my own word wrap ended up being the solution. For now it's only the first line, I'm going to end up having to do the rest of it though. There are going to end up being symbols in the middle of the text later on. The bugger I'm just realizing is that I can't even cheat and make my own font since the text around the symbols would be in a different (varying size) font, requiring separate calls to Drawstring.
On the bright side, the output is a printed label, so at least I don't have to worry about keeping up a frame rate.
The true man wants two things: danger and play. For that reason he wants woman, as the most dangerous plaything.
|
|
|
|
|
I am trying to populate a toolstripcombobox with an arraylist. I tried :
toolstripcombobox1.combobox.datasource = arraylist,
but nothing shows up in the combobox
any suggestions on how to do this?
Tom
|
|
|
|
|
hehe I found the solution hehe
foreach (var item in arraylist)
{
toolstripcombobox1.items.add(item)
}
|
|
|
|
|
I would extend the toolstripcombobox to a new control that can have a new DataSource property which accepts type arraylist and then parse that internally to compartmentalize your controls better to split up your logic more efficiently.
|
|
|
|
|
does any one have an idea about audio and vedio capturing and playbaking it ?
if so plz put ya ideas on how to do it ?
thanx
|
|
|
|
|
One word - DirectShow.
Does all you need, and more...
There are three kinds of people in the world - those who can count and those who can't...
|
|
|
|
|
can u gimme a short brief abt it ?
THANX
|
|
|
|
|
Google it, do some research for &%*^s sake.
|
|
|
|
|
As mentioned above, you can find hundreds of examples on the net (hey, even on Code Project! ) with a bit of searching, but to get you started, here's the official documentation for it[^]...
There are three kinds of people in the world - those who can count and those who can't...
|
|
|
|
|
It is unclear from your post if you are wanting to do capturing of your computer's screen and the computer's audio or the audio and video from an external mic and a camera.
Taverso DAW[^] is an open source utility and can do audio recording and processing.
CamStudio[^] is an open source utility that can capture audio and video simultaneously (from the board display and board audio card).
I am not sure if that could possibly help you. But that's all I can give you with the information available on your post. Also, they may not be C# applications (even though I'm pretty sure there are C# wrappers around these at CodePlex).
It is a crappy thing, but it's life -^ Carlo Pallini
|
|
|
|
|
The guys that are the gurus today started with just a pixel. It changed color as the sensor moved to a light environment to a dark environment. Then they got the opportuntity to mess around with two pixels, then three.. then 25. As the number of pixels they were recording over time increased, they had different techniques to capture the video, and different techniques to play back the video.
Now we have very high resolution, but many of the same tecniques still apply to the single pixel screen. If you are thinking about creating your own video capture utility I would strongly recommend that you review the history of the video recording and capture technology as you learn to spell.
Life is too short to program in Visual Basic.
|
|
|
|
|
Nooner wrote: I would strongly recommend that you review the history of the video
I think you are asking too much of him, this guy can't even use Google so actually doing some research seems a little beyond him.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
I just know there is one generics: ArraySegment, is used to take one part of an array.
but I really do not understand why this special generics is given (in contranst to other more general generics such as List<>, Dictionary<> and so on). because it seems to me it can only realize single function: take one part of an array.
therefore, is it necessary to define one generics ArraySegment? instead, one method can be added into Array or List is just fine.
Perhaps my understanding is not correct.
thanks
|
|
|
|
|
Huh, never heard of it, I wrote my own, I'll have to take a look at it.
I suspect that part of the reasoning for it is that the D language has array slicing built in.
|
|
|
|
|
I too had not looked at this before.
From a brief look, I think you are largely correct, although there is (very) slightly less typing involved in array slicing when using it.
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
Hi, i wanna retrieve my blob data from mysql database..
After retrieving it, i wanna use the image on one of my button.
How do i do that? any clues?
|
|
|
|
|
Get the data as a byte array, load the array into a MemoryStream, use Image.FromStream() to read it as an image. Apart from the blob being a byte array, the method of retrieving the data is as usual. If you have a MySQL database driver installed on the computer, the DataGridView will automatically show the blob as an image
Between the idea
And the reality
Between the motion
And the act
Falls the Shadow
|
|
|
|
|
I dont quite know how to do that, but this is the code i have
private void getMainCommImages()
{
Byte[] image = null;
MySqlDataReader reader = db.getMainCommImages();
while (reader.Read())
{
image = new Byte[(reader.GetBytes(0,0,null,0,int.MaxValue))];
reader.GetBytes(0, 0, image, 0, image.Length);
reader.Close();
db.Close();
}
}
public MySqlDataReader getMainCommImages()
{
Connect();
command = conn.CreateCommand();
command.CommandText = "SELECT image from images";
reader = command.ExecuteReader();
return reader;
}
after getting the image in bytes. how do i display out to my button
modified on Thursday, June 11, 2009 1:29 PM
|
|
|
|
|
So where does it fail? Do you get the correct byte array? If you do, then simply create a MemoryStream(byte[]) and use Image.FromStream
Between the idea
And the reality
Between the motion
And the act
Falls the Shadow
|
|
|
|
|
Thanks i got it working.
Btw, i have 15 buttons name btn1, btn2, btn3 etc etc
i have 15 images as well in my database. How do i get those images to be on each button.
private void getMainCommImages()
{
Byte[] image = null;
MySqlDataReader reader = db.getMainCommImages();
MemoryStream ms;
Image returnImage;
while (reader.Read())
{
image = new Byte[(reader.GetBytes(0,0,null,0,int.MaxValue))];
reader.GetBytes(0, 0, image, 0, image.Length);
ms = new MemoryStream(image);
returnImage = Image.FromStream(ms);
for (int i = 1; i < 15; i++)
{
btn[i].Image = returnImage;
}
}
reader.Close();
db.Close();
}
something wrong with this part btn[i].Image = returnImage;
|
|
|
|