'개발'에 해당되는 글 43건

  1. C# 화면 캡처하기
  2. 텍스트가 div 범위 밖으로 나가는 현상 해결하기(줄바꿈 처리하기) 2
  3. PHP 한글 포함한 문자열 자르기 mb_substr
  4. Square 3.2 패치 노트
  5. Javascript 문자열 치환 replaceAll 함수
  6. CSS 가로뿐만이 아니라 세로로도 가운데 정렬하기
  7. Square 3.1 패치 노트
  8. PHP 웹페이지에서 오류 로그 보기
  9. PHP에서 원하는 길이로 랜덤 문자열 만들기 2
  10. PHP json_encode 활용하기

C#에서 스크린을 캡처하는 함수입니다. 모니터의 전체 화면을 캡처해 지정한 위치에 저장합니다.




C# 화면 캡처하기

   public void CaptureImage()

        {

            try

            {      

                image_name = "이미지 이름";

                Bitmap bitmap = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);

                Graphics g = Graphics.FromImage(bitmap);

                g.CopyFromScreen(new Point(0, 0), new Point(0, 0), new Size(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height));

                g.Dispose();

                g = null;


                bitmap.Save(Environment.GetFolderPath( "저장할 위치" + image_name + ".png", ImageFormat.Png);

            }

            catch (Exception e)

            {

                Console.WriteLine(e);

            }

        }



'Development > C#' 카테고리의 다른 글

C# 파일 다운로드하기  (0) 2017.07.27
C# 현재시간 Timestamp 가져오는 함수  (0) 2017.07.20

div 태그에 width를 직접 정해주면 텍스트가 자동으로 줄 바꿈을 하지 못하고 div 범위를 벗어나는 경우가 있습니다.

텍스트가 div 범위 밖으로 나가는 현상 해결하기

이 문제를 해결하는 방법은 간단합니다. div의 스타일을 정해주는 부분에 "word-break:break-all;" 를 추가하면 됩니다.


word-break:break-all;


예시)


'Development > CSS' 카테고리의 다른 글

CSS 가로뿐만이 아니라 세로로도 가운데 정렬하기  (0) 2017.07.04

PHP에서 문자열을 원하는 길이만큼 자르는 함수에는 substr이라는 함수가 있습니다. 하지만 영문 byte를 기준으로 자르기 때문에 한글 문자열을 자르려다 보면 글자가 깨지는 현상이 일어납니다. 따라서 특정 인코딩이나 한글을 포함한 문자열을 자를 때에는 mb_substr 함수를 사용합니다.



PHP 한글 포함한 문자열 자르기 mb_substr


아래와 같이 호출하면 잘린 문자열을 반환합니다.


mb_substr(자를 문자열 , 어디서부터 자를 것인지, 얼마나 자를건지);


어디서부터 자를 것인지 부분은 0부터 시작합니다.

ex)

echo mb_substr("안녕하세요.", 0, 2);


출력값 )

안녕



사용할 특정 인코딩 방법을 지정할 수도 있습니다.

mb_substr(자를 문자열 , 어디서부터 자를건지, 얼마나 자를 것인지, 인코딩 방법);


ex)

echo mb_substr("안녕하세요.", 0, 2, 'utf-8');


Square 3.2가 릴리즈되었습니다. 이전 버전에서의 중요한 버그가 해결되었습니다. 이외에도 UI 개선과 카드 생성 시 줄 바꿈을 할 수 있는 기능이 추가되었습니다.


http://square.tarks.net

Square 3.2 패치 노트



http://square.tarks.net


Square 'Square 3.2 패치노트' - http://tarks.net/square/KocsUK7i5F_X


1. 여러 줄로 글 작성

기존엔 카드 내에서 줄 바꿈이 불가능했으나 가능해지도록 업데이트되었습니다.


2. 카드 생성할 때의 UI 개선

카드 생성 시 UI가 더 깔끔하게 변경되었습니다.


3. 생일 페이지 심각한 버그 해결

생일 페이지 할 말 부분에서 줄 바꿈 시에 생일 페이지가 제대로 생성되지 않던 문제를 수정했습니다.



'Square' 카테고리의 다른 글

2월 28일 업데이트  (0) 2019.03.01
Square 3.4 패치 노트  (1) 2017.09.26
Square 3.3 패치 노트  (0) 2017.07.22
Square 3.1 패치 노트  (0) 2017.07.03
페이스북 생일 축하 글로 뭘 써야 할지 고민이 될 때  (1) 2017.06.23

JavaScript에서의 replace는 처음 만나는 문자열만 대체합니다. 해당하는 문자열이 뒤에 더 있어도 바꾸지 않습니다. 모두 바꾸기(Replace All)의 효과를 보고 싶은데 그러지 못하죠. 이를 위한 함수가 있습니다.



Javascript 문자열 치환 replaceAll 함수

아래 함수를 사용하여 해당하는 문자열을 모두 치환할 수 있습니다.

function replaceAll(str, searchStr, replaceStr) {
return str.split(searchStr).join(replaceStr);
}

replaceAll(문자열, 찾을 문자열, 덮어쓸 문자열);


사용 예)

replaceAll("hi hello hi" , "hi", "hello");


반환값)

hello hello hello


가로 방면에서 가운데를 정렬하게 하는 방법은 잘 알려졌지만, div 안에서 세로로도 가운데 정렬하는 건 약간 더 까다로운 편입니다. 텍스트가 여러 줄이 되어도 비율을 맞춰 가운데 정렬하게 할 수 있습니다.


 

CSS 가로뿐만이 아니라 세로로도 가운데 정렬하기


CSS 부분

<style>


.outer {
display: table;
width: 300px;
margin-top: 24px;
}

.tablerow {

display: table-row;

}

.content {

width:300px;
height: 300px;

vertical-align: middle;
display: table-cell;

}

</style>


HTML 부분

<div class="outer">
<div class="tablerow">
<div class="content">

가운데에 있을 내용
</div>
</div>
</div>


'페이스북 생일 축하 글로 뭘 써야 할지 고민이 될 때' 라는 글에서 소개된 Square의 3.1 버전이 릴리즈되었습니다. 이제 형식에 구애받지 않고 카드 콘텐츠를 만들 수 있게 업데이트되었습니다. 이외에도 각종 성능 개선이 이루어졌습니다.



http://square.tarks.net

Square 3.1 패치 노트


http://square.tarks.net


Square 'Square 3.1 패치노트' - http://tarks.net/square/0nKqr6lFSGp9


[새로운 기능 추가] 이제 기존에 있던 생일뿐만 아니라 자신이 원하는 카드 콘텐츠를 만들 수 있습니다.

성능 개선점


- 참신하게 생일축하하기  : 이제 생일에 일어난 일을 불러올 때 더 효율적이고 빠르게 불러옵니다.

- 진행 중 인터페이스 개선 : 페이지를 생성 중 일때 사용자에게 혼동을 줄 수 있는 인터페이스가 개선되었습니다.

- 카드 개선 : 카드를 불러올 때의 내부 알고리즘을 개선했습니다.




http://square.tarks.net




'Square' 카테고리의 다른 글

2월 28일 업데이트  (0) 2019.03.01
Square 3.4 패치 노트  (1) 2017.09.26
Square 3.3 패치 노트  (0) 2017.07.22
Square 3.2 패치 노트  (0) 2017.07.06
페이스북 생일 축하 글로 뭘 써야 할지 고민이 될 때  (1) 2017.06.23

보통 웹서버의 로그 파일 확인이나 Test를 통해 오류를 확인하지만, 간단한 함수 호출만으로도 웹페이지에서 에러 로그를 확인할 수 있습니다.


PHP 웹페이지에서 오류 로그 보기


태스트나 디버그 목적 외에는 사용하지 않는 것을 권합니다. 서버의 에러 로그를 아무나 볼 수 있게 하는 것은 보안에 별로 좋지 않습니다.

아래 함수를 처음에 호출하면 발생하는 오류나 충돌 사항을 표시하게 됩니다.


error_reporting(E_ALL);
ini_set('display_errors', 1);


PHP에서 원하는 길이로 랜덤 문자열을 반환하는 함수입니다. 문자열에 포함할 문자를 임의로 지정할 수 있습니다.



PHP에서 원하는 길이로 랜덤 문자열 만들기


 function GenerateString($length)  
{
$characters = "0123456789";
$characters .= "abcdefghijklmnopqrstuvwxyz";
$characters .= "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$characters .= "_";

$string_generated = "";

$nmr_loops = $length;
while ($nmr_loops--)
{
$string_generated .= $characters[mt_rand(0, strlen($characters) - 1)];
}

return $string_generated;
}


위 함수에 원하는 길이를 넣어 호출하면 $characters에 있는 문자열들로 랜덤 문자열을 반환합니다.


ex)  


echo GenerateString(15);


결과)


jsjIgpJ2Pn7w3y6

PHP에서는 배열을 JSON으로 변환할 수 있는 함수가 기본적으로 내장되어 있습니다. 이것이 옵션에 따라 JSON 출력의 결과가 달라집니다.



PHP json_encode 활용하기


JSON_UNESCAPED_UNICODE

유니코드 문자열을 대상으로 Escape를 해서 \uac00 이런 식으로 보이게 하지 않습니다.


  json_encode("가나다"); // 값 : "\uac00\ub098\ub2e4"

  json_encode("가나다",JSON_UNESCAPED_UNICODE); // 값 : "가나다"



JSON_FORCE_OBJECT

배열(Array)을 Object 형태로 변환합니다.

 json_encode(array('A','B','C')); // 값 : ["A","B","C"]

 json_encode(array('A','B','C'),JSON_FORCE_OBJECT); // 값 : {"0":"A","1":"B","2":"C"}


JSON_NUMERIC_CHECK

숫자로만 되어있는 문자열을 Int 형태로 변환시켜 줍니다.

json_encode(array('123','12A')); // 출력값 : ["123","12A"]

 json_encode(array('123','12A'),JSON_NUMERIC_CHECK); // 출력값 : [123,"12A"]


JSON_HEX_TAG

< 와 >와 같은 태그 기호들이 \u003C 와 \u003E 이런 식으로 변환되게 됩니다.

     json_encode("< >"); // 출력값 : "< >"

     json_encode("< >",JSON_HEX_TAG); // 출력값 : "\u003C\u003E"


여러 개 옵션을 동시에 사용하려면 '|' 기호를 사용하여서 할 수 있습니다.


 json_encode($array, JSON_NUMERIC_CHECK | JSON_UNESCAPED_UNICODE);